python pandas - 返回每个单元格中的列表或一系列值

时间:2016-11-29 02:27:37

标签: python pandas

我有一个名为'trade'的数据框,如下所示:

                        high              MFE_ts
exit_time                                       
2000-02-01 01:00:00  1401.50 2000-02-01 01:00:00
2000-02-01 01:30:00  1401.00 2000-02-01 01:30:00
2000-02-01 02:00:00  1401.00 2000-02-01 01:30:00
2000-02-01 02:30:00  1399.75 2000-02-01 02:30:00
2000-02-01 03:00:00  1400.00 2000-02-01 02:30:00
2000-02-01 03:30:00  1399.25 2000-02-01 03:30:00
2000-02-01 04:00:00  1399.00 2000-02-01 03:30:00
2000-02-01 04:30:00  1400.25 2000-02-01 03:30:00
2000-02-01 05:00:00  1400.50 2000-02-01 03:30:00
2000-02-01 05:30:00  1400.75 2000-02-01 03:30:00

我想在右侧添加一个新列,其中包含一系列值,如下所示:

对于每一行,取“MFE_ts”列中包含的时间戳,并创建从“高”列中取得的值列表,该列将从该时间戳跨越到表的末尾。 例如,在最后一行中,输出应为= trade.loc['2000-02-01 03:30:00':, 'high']

我尝试了以下

的各种迭代
trade[MAE_pr] = trade.loc[trade['MFE_ts']:, 'high']

但没有成功。我假设一个系列或一个列表没问题 - 我最终想对该新系列MAE_pr中的每个单元格应用max()或min()函数到该系列/列表。

1 个答案:

答案 0 :(得分:1)

试试这个

df.apply(lambda x: df.high.loc[x.MFE_ts:], 1)

enter image description here