2016-11-11 14 views
0

をdatafraem、私は、例えば、キー に基づいて値をCONCATしたい、の連結行は、私はパンダのデータフレームを持つ

c1  c2 c3 c4 c5 
14206 3.5 0 0 0 
14206 0 0 0 0 
14206 0 0 0 0 
14206 0 0 0 0 

はそれのようになりたい...

14206 3.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 

私はdf.groupBy(id)を試しましたが、次に何をすべきか分かりません。

答えて

0

これは片道です。列0でグループ、それらすべてのスタックを解除し、あなたが行ではなく列をしたいとして移調、その後、唯一のデータ列を保持するためのフィルタ:

df.groupby('c1')[['c2', 'c3', 'c4', 'c5']].apply(lambda g: g.unstack().T) 
Out[16]: 
     c2     c3     c4     c5  \ 
     0 1 2 3 0 1 2 3 0 1 2 3 0 1 
c1                    
14206 3.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 


     2 3 
c1    
14206 0.0 0.0 
+0

あなたの列に編集した列 –

+0

、回答スタンドとして現れる結果同じ – Boud

関連する問題