2024-04-25 17:28:46 发布
网友
我想计算每一列数据的一阶自相关系数
我希望下面的每一个代码都给出相同的结果,但结果不一样
我应该用哪一个
df[df.columns.to_list()].apply(lambda x: x.corr(x.shift()))
或
df[df.columns.to_list()].apply(lambda x: x.autocorr)
第二个应该是df[df.columns.to_list()].apply(lambda x: x.autocorr()),因为您需要内括号来调用autocorr函数
df[df.columns.to_list()].apply(lambda x: x.autocorr())
autocorr
这些代码段应该给出完全相同的结果,因为autocorr的实现是一行代码:self.corr(self.shift(lag)),这与您的第一个代码段相同
self.corr(self.shift(lag))
如果这仍然不起作用,请与可复制的示例共享您的数据
第二,使用df[df.columns.to_list()]并没有什么特别的作用,因为您并没有创建数据的子集,所以只需执行df.apply和跳过df[df.columns.to_list()]
df[df.columns.to_list()]
df.apply
第二个应该是
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()]
相关问题 更多 >
编程相关推荐