我有一个带有日期时间索引和价格的简单(长)熊猫DF,我试图创建一个新列['ewm_12'],每120分钟选择11条前一行,以附加当前价格并计算ewm
由于DF很长,我正在尝试使用矢量化方式来执行此操作,请使用以下代码:
dftemp['ewm_12'] = dftemp.loc[dftemp.index::120][-11:].append(dftemp.loc[(dftemp.index)])[dfs].ewm(min_periods=12,span=12, adjust = True).mean()[-1:][0]
TypeError:无法转换输入[DatetimeIndex(['2018-01-01 22:00:00 + 00:00','2018-01-01 22:01:00 + 00:00','2019-01 -18 22:00:00 + 00:00'],dtype ='datetime64 [ns,Europe / London]',length = 394561,freq = None)]类型为时间戳
这似乎很奇怪,好像我只选择一行dftemp.index返回一个时间戳,但是当我要求它遍历整个df.index时,它说它不能转换Datetimeindex(这是Timestamp的集合),我可以使用for循环来完成此操作,但要花几分钟,我敢肯定,如果有人知道请帮忙,一定有办法