计算Pandas中每列数据的自相关

2024-04-25 17:28:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我想计算每一列数据的一阶自相关系数

我希望下面的每一个代码都给出相同的结果,但结果不一样

我应该用哪一个

df[df.columns.to_list()].apply(lambda x: x.corr(x.shift()))

df[df.columns.to_list()].apply(lambda x: x.autocorr)

Tags: columnsto数据lambda代码dfshiftlist
1条回答
网友
1楼 · 发布于 2024-04-25 17:28:46

第二个应该是df[df.columns.to_list()].apply(lambda x: x.autocorr()),因为您需要内括号来调用autocorr函数

这些代码段应该给出完全相同的结果,因为autocorr的实现是一行代码:self.corr(self.shift(lag)),这与您的第一个代码段相同

如果这仍然不起作用,请与可复制的示例共享您的数据

第二,使用df[df.columns.to_list()]并没有什么特别的作用,因为您并没有创建数据的子集,所以只需执行df.apply和跳过df[df.columns.to_list()]

相关问题 更多 >