我在熊猫中有一个如下所示的数据框。索引是日期时间对象,按天排序,分为 5 分钟区间。我有一个名为“col1”的列。所以如果我这样做
df['col1']
我得到:
DateTime
2008-04-28 09:40:00 300.0
2008-04-28 09:45:00 -800.0
2008-04-28 09:50:00 0.0
2008-04-28 09:55:00 -100.0
2008-04-28 10:00:00 0.0
2008-04-29 09:40:00 500.0
2008-04-29 09:45:00 800.0
2008-04-29 09:50:00 100.0
2008-04-29 09:55:00 -100.0
2008-04-29 10:00:00 0.0
我在原始数据帧中使用 groupby 获得了另一个数据帧
df2 = df([df.index.time])[['col2']].mean()
输出:
col2
09:40:00 4603.585657
09:45:00 5547.011952
09:50:00 8532.007952
09:55:00 6175.298805
10:00:00 4236.055777
我想要做的是在不使用 for 循环的情况下,为 5 分钟的 bin 中的每一个将 col1 除以 col2。为了更好地解释,在所有的日子里,每个 bin 将 col1 除以 col2。例如,将 col1 中的所有 9:40:00 值除以 col2 中的 9:40:00 值。
我不知道如何在没有 for 循环的情况下开始执行此操作,但我的印象是它应该可以用 Pandas 执行。
预期的输出是:
DateTime
2008-04-28 09:40:00 300.0/4603.585657
2008-04-28 09:45:00 -800.0/5547.011952
2008-04-28 09:50:00 0.0/8532.007952
2008-04-28 09:55:00 -100.0/6175.298805
2008-04-28 10:00:00 0.0/4236.055777
2008-04-29 09:40:00 500.0/4603.585657
2008-04-29 09:45:00 800.0/5547.011952
2008-04-29 09:50:00 100.0/8532.007952
2008-04-29 09:55:00 -100.0/6175.298805
2008-04-29 10:00:00 0.0/4236.055777
缥缈止盈
相关分类