2016-10-25 7 views
3

新しいデータフレームを作成したいと思いますが、AとBは保持されていますが、B列の名前が変更され、A列とC列が繰り返されますが、Cの値はC列のD列に配置されます。パンダで2つの異なる名前の列をどのように連結しますか?

df = A  B C 
    'bob' 1 4 
    'john' 2 5 
    'mick' 3 6 

これは新しいデータフレームの外観です。

new_df = A  D 
     'bob' 1 
     'john' 2 
     'mick' 3 
     'bob' 4 
     'john' 5 
     'mick' 6 
+0

あなたがこれまでに試したものを掲載。 –

+1

[このデータフレームを改造する方法](http://stackoverflow.com/questions/37118464/how-to-reshape-this-dataframe)の可能な複製 –

答えて

8

代替-1:

使用lreshape長いフォーマットさDFに広いから変換する:

pd.lreshape(df, {'D': ['B', 'C']}) 

Image


その後、

あなたが連結を実行する場合、実行します。:

代替-2

df = df.set_index(['A']) 
pd.concat([df['B'], df['C']]).reset_index(name='D') 

Image

関連する問題