2015-10-15 71 views
2

已經提出了類似的問題,但我還沒有看到清晰的答案。原諒我再問一次。我有兩個數據幀,我只想在第二個數據幀與每列的相關性。這裏是代碼,正是我想要的:兩個數據幀之間的相關性

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) 

應該完成工作。有沒有循環執行此功能的清晰方法?

+1

沒有多少錯,你也可以做'df2.apply(DF1 [「Y」]修正)'但是這是遍歷每個山坳反正 – EdChum

回答

2

您可以使用corrwith

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