2017-05-30 11 views
1

次のpandasクロス集計を介して集計データフレームを取得しました。しかし、私はこのような列フォーマットしたいと思います:pandas crossstab dataframeをプレーンテーブル形式に変更してください:

id   ymdh   A11  A12  A15  A16 
-------------------------------------------------------------- 

私は私の希望の形式に、元のデータフレームを変更するにはどうすればよいですか?

* Original output dataframe:  

df = pd.crosstab(df.ymdh, df_data.id, margins=False,  
         values=df.duration, dropna=False, 
         normalize='columns', 
         aggfunc=[np.sum]).reset_index().fillna(0) 


      ymdh  sum              
id      A11  A12  A15  A16  
---------------------------------------------------------- 
0  2016040100 0.000000 0.002222 0.049398 0.018077 
1  2016040101 0.003354 0.004141 0.078531 0.015131 
2  2016040102 0.001397 0.002424 0.000633 0.001473 
+0

'pd.crosstab'を作成するためにあなたは、データのサンプルを追加することはできますか? – jezrael

+0

また、 'aggfunc = [np.sum]'を 'aggfunc = 'sum''に変更するのに役立ちます – jezrael

+0

haha​​ha .....ありがとうございます! ^^; –

答えて

1

私はあなたがsumcrosstabが必要だと思う:

df = pd.crosstab(df.ymdh, df_data.id, margins=False,  
         values=df.duration, dropna=False, 
         normalize='columns', 
         aggfunc='sum').reset_index().fillna(0) 
関連する問題