2016-04-29 8 views
1

reshapeに私が欲しい- データ以下の考える新しい列に列のエントリ

 Symbol  Date  Type   Value 
518   ZW 2008-01-02  cm 1.204330e+09 
519   ZW 2008-01-02 cm_next 1.209600e+09 
520   ZW 2008-01-02  p&l 0.000000e+00 
521   ZW 2008-01-02 position 0.000000e+00 
522   ZW 2008-01-02 rolldate 1.203466e+09 
523   ZW 2008-01-02  value 3.114788e+04 
524   ZW 2008-01-02  vola 6.256606e+02 
1046  ZW 2008-01-03  cm 1.204330e+09 
1047  ZW 2008-01-03 cm_next 1.209600e+09 
1048  ZW 2008-01-03  p&l 0.000000e+00 
1049  ZW 2008-01-03 position 0.000000e+00 
1050  ZW 2008-01-03 rolldate 1.203466e+09 
1051  ZW 2008-01-03  value 3.202738e+04 
1052  ZW 2008-01-03  vola 6.338274e+02 
1574  ZW 2008-01-04  cm 1.204330e+09 
1575  ZW 2008-01-04 cm_next 1.209600e+09 
1576  ZW 2008-01-04  p&l 0.000000e+00 
1577  ZW 2008-01-04 position 0.000000e+00 
1578  ZW 2008-01-04 rolldate 1.203466e+09 
1579  ZW 2008-01-04  value 3.162559e+04 
1580  ZW 2008-01-04  vola 6.357563e+02 
2102  ZW 2008-01-07  cm 1.204330e+09 
2103  ZW 2008-01-07 cm_next 1.209600e+09 
2104  ZW 2008-01-07  p&l 0.000000e+00 
2105  ZW 2008-01-07 position 0.000000e+00 
2106  ZW 2008-01-07 rolldate 1.203466e+09 
2107  ZW 2008-01-07  value 3.066630e+04 
2108  ZW 2008-01-07  vola 6.381839e+02 

この表の次の形式に:

Symbol | Date | cm | cm_next | rolldate | p&l | position | [etc..] 

すなわち私のすべてのタイプがあることになっています各日付のそれぞれの値を含みます。

私は試しましたdf.pivot() & df.unstack()しかし、私が欲しいのは、その範囲を超え、私が探しているものではなく、私が理解しているものではありません。

私はType列の各タイプのデータを抽出し、一緒に戻して接着することができましたが、これはむしろプライマルなアプローチのようです。 これを実現するには、より良い方法がありますか?pandaic

答えて

1

私はあなたがpivot_tableが必要だと思うが、データはrename_axispandas0.18.0の新機能)とreset_indexnp.mean(デフォルトaggfunc=np.mean)によって集約されています

print df.pivot_table(index=['Symbol','Date'], columns='Type', values='Value') 
     .rename_axis(None, axis=1) 
     .reset_index() 

    Symbol  Date   cm  cm_next p&l position  rolldate \ 
0  ZW 2008-01-02 1.204330e+09 1.209600e+09 0.0  0.0 1.203466e+09 
1  ZW 2008-01-03 1.204330e+09 1.209600e+09 0.0  0.0 1.203466e+09 
2  ZW 2008-01-04 1.204330e+09 1.209600e+09 0.0  0.0 1.203466e+09 
3  ZW 2008-01-07 1.204330e+09 1.209600e+09 0.0  0.0 1.203466e+09 

     value  vola 
0 31147.88 625.6606 
1 32027.38 633.8274 
2 31625.59 635.7563 
3 30666.30 638.1839 
+0

あなたが歩く 'pandas'マニュアル、チームメイトのようにしています。それは私が必要とするものです。私は一度答えることができます(まだタイムロックされています)。乾杯! – nlsdfnbch

+0

ありがとうございます。いい日。 – jezrael

関連する問題