2016-08-19 6 views
-3

時系列データから、一日の終値を取得:パンダは、私はパンダのデータフレームにいくつかの時系列データを持っている

prices.head() 
       Time A  B  C  D 
0 2012-01-02 08:00:30 NaN 47.1650 31.51 58.16 
1 2012-01-02 08:01:00 NaN 47.2400 31.48 58.19 
2 2012-01-02 08:01:30 NaN 47.2750 31.46 58.21 
3 2012-01-02 08:02:00 NaN 47.3250 31.40 58.17 
4 2012-01-02 08:02:30 NaN 47.3325 31.42 58.07 

私は毎日の終値を含む4つの新しい列を作成したいと思います。どうやってやるの? 1日目に関連する

サンプルは、1日目の終値を持つべきであるというように...

+0

所望のデータセット(DF)を投稿してください。 [良い再現可能なパンダの例を作る方法](http://stackoverflow.com/questions/20109391/how-to-make-good-reproducible-pandas-examples) – MaxU

答えて

0

あなたはgroupby日付をすることができ、そしてバックに参加し、各グループの最後の1を取ります。

df['date'] = df.Time.dt.date 
print df.join(df.groupby('date')[['A','B','C','D']].last(), rsuffix='_close', on='date') 

       Time A  B  C  D  date A_close \ 
0 2012-01-02 08:00:30 NaN 47.1650 31.51 58.16 2012-01-02  NaN 
1 2012-01-02 08:01:00 NaN 47.2400 31.48 58.19 2012-01-02  NaN 
2 2012-01-02 08:01:30 NaN 47.2750 31.46 58.21 2012-01-02  NaN 
3 2012-01-02 08:02:00 NaN 47.3250 31.40 58.17 2012-01-02  NaN 
4 2012-01-02 08:02:30 NaN 47.3325 31.42 58.07 2012-01-02  NaN 

    B_close C_close D_close 
0 47.3325 31.42 58.07 
1 47.3325 31.42 58.07 
2 47.3325 31.42 58.07 
3 47.3325 31.42 58.07 
4 47.3325 31.42 58.07 

関連する問題