Python Pandas中是否有一个很好的快捷方式来从一阶差分时间序列恢复实际值?

Python Pandas中是否有一个很好的快捷方式来从一阶差分时间序列恢复实际值?,python,pandas,Python,Pandas,我得到了timeseries=(training,test),然后我使用Pandas.diff()操作符对training部分时间序列(diff\u training\ts)进行操作,使我的时间序列保持稳定,然后我使用diff\u training\u set预测测试值 显然,我的预测值还不是真的,我必须对它们进行积分 现在我想计算sqrt(rmse(test,predicted)),问题是我必须恢复真实值,我使用cumsum()和其他工具编写了一段代码,但它看起来很粗糙(还有一个bug)。对于

我得到了
timeseries=(training,test)
,然后我使用Pandas
.diff()
操作符对
training
部分时间序列(
diff\u training\ts
)进行操作,使我的时间序列保持稳定,然后我使用
diff\u training\u set
预测测试值

显然,我的预测值还不是真的,我必须对它们进行积分

现在我想计算
sqrt(rmse(test,predicted))
,问题是我必须恢复真实值,我使用
cumsum()
和其他工具编写了一段代码,但它看起来很粗糙(还有一个bug)。对于这种操作,熊猫有没有一条好的捷径

UPD
如果我删除cumsum:imgur.com/a/OEiDXXk,这里有一个结果,但这里有一个例子:源数据:
df=3101154
where
{3,10,12}=training
{15,4}=test
。在
df=df.diff()
->
diff={NaN 7 2 3-11}
->
diff\u training={7,2}
diff\u test={3,-11}
diff\u test.cumsum()={3,-8}
seed=3
term\u-to\u-add 12
之后,我们可以得到真实的测试值

你怎么知道1来自2-1还是100000-99999?@coldspeed我自制的实现基本上需要一个
seed=train[0]
,然后我总结了所有的训练差异->
term\u to\u add=seed+diff\u training.sum()
。然后我预测测试值并使其成为现实,我做
test=test.cumsum();测试+=从项到项的添加问题是我显然需要执行cumsum(),但如果我删除该行,它就可以工作(至少在视觉上)了。这就是你要问的吗@拉斐尔:是的,但这是另一种自行车运动。我相信你不能在numpy中使用循环。@coldspeed这是我自制的代码,有一个bug(关于cumsum):