Pandas中的'corr()'函数是否应用于自动数据归一化?

4

我经常使用 Pandas 的 corr() 方法。但是我不确定 Pandas 的 corr() 方法是否应用了自动数据标准化。我知道相关性必须在数据标准化之后进行。

我的问题是,如果我使用 Pandas 的 corr() 方法来检查数据帧中各列之间的Pearson相关系数,那么 Pandas 的 corr() 方法是否会自动应用数据标准化?

我尝试使用 Scikit-learn 中的 StandardScaler 进行验证。在对数据进行标准化后,得到的相关性与未进行标准化时相等。

[在我尝试实验后]
哦...我尝试使用 Scikit-learn StandardScaler 进行验证。结果后者的系数与前者相等。也许 Pandas 的 corr() 方法自动使用数据标准化。

1个回答

2

我一点也不知道你在说什么。

我知道相关性必须在数据归一化之后进行。

如果您使用斯皮尔曼相关系数,则无需归一化变量。

您可能指的是皮尔逊相关系数。来自维基百科的描述:

两个变量的协方差除以它们的标准偏差,因此它基本上是协方差的标准化测量,因此结果始终具有-1到1之间的值

因此,在任何斯皮尔曼计算中,都有一步计算要按标准差进行缩放。

如果您事先使用 StandardScaler() 缩放您的变量,则只需将变量除以其标准差即可,这当然不会改变结果。


谢谢你的回答!是的!我指的是皮尔逊相关系数。我应该提到特定的相关性,比如皮尔逊。由于你,我知道了一个新的事实,即在斯皮尔曼中不需要进行归一化处理。谢谢! - YounghunJo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接