引发ValueError(“长度必须匹配才能进行比较”)ValueError:长度必须匹配才能进行比较

时间:2019-01-22 12:54:03

标签: pandas moving-average

我正在尝试计算一个12个周期的指数ma,其中前11个周期在dftemp1中(我在120分钟的窗口中对数据进行了重新采样)。最后一个时间段必须是dftemp中包含的当前时间和时间点

dftemp                      GBPAUD
2018-01-01 22:00:00+00:00  1.72756
2018-01-01 22:01:00+00:00  1.72774
2018-01-01 22:02:00+00:00  1.72768
2018-01-01 22:03:00+00:00  1.72769
2018-01-01 22:04:00+00:00  1.72779

dftemp1                    GBPAUD

2018-01-01 22:00:00+00:00  1.72756
2018-01-02 00:00:00+00:00  1.72439
2018-01-02 02:00:00+00:00  1.72485
2018-01-02 04:00:00+00:00  1.72873
2018-01-02 06:00:00+00:00  1.72990

在将以下代码用作一个命令行时(将dftemp.index替换为给定的日期和时间),该代码有效,但是当尝试对其向量化时,我尝试创建11 + 1行并计算ewm,它给出了错误: 引发ValueError('长度必须匹配才能进行比较')。请帮忙,因为我在此方面的知识已经用尽,被困了一天左右

ValueError:长度必须匹配才能进行比较

dftemp['ewm_12'] = ((dftemp1.loc[(dftemp1.index < dftemp.index)][-11:]['GBPAUD'].append(dftemp.loc[(dftemp.index)])['GBPAUD']).ewm(min_periods=12,span=12, adjust = True).mean()[-1:])

0 个答案:

没有答案