有人问过类似的问题,但我还没有一个清晰的答案。请原谅我再次询问。我有两个数据框,我只想第一个数据框与第二个数据列的相关性。这是完全符合我想要的代码:

df1=pd.DataFrame( {'Y':np.random.randn(10) } )
df2=pd.DataFrame( {'X1':np.random.randn(10), 'X2':np.random.randn(10) ,'X3':np.random.randn(10) } )
for col in df2:
   print df1['Y'].corr(df2[col])

但似乎我不应该遍历数据框。我希望有一些简单的事情
df1.corr(df2)

应该把工作做好。有没有明确的方法可以执行此功能而不循环?

最佳答案

您可以使用 corrwith :

>>> df2.corrwith(df1.Y)
X1    0.051002
X2   -0.339775
X3    0.076935
dtype: float64

关于python - 两个数据框之间的相关性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33157528/

10-09 22:36
查看更多