2016-12-17 141 views
0

我在xls中有非常大的數據。它的一小部分被示出在下面如何計算所有可能行之間的相關性

Name V1 V2 V3 V4 V5 
    A 2 2 2 1 2 
    Ab 10 10 9 1 10 
    AC 14 7 1 2 14 
    AD 5 1 1 1 5 
    AF 14 14 11 1 14 
    Ag 3 3 3 1 3 
    Qn 7 7 7 3 7 
    Ah 35 3 3 1 35 

欲行計算相關係數的所有可能的組合 例如,行1和行2,列1和ROW3 ...

輸出I希望有這樣

Name1 Name2  Correlation Coef 
A  Ab  
A  AC 
.   . 
.   . 
.   . 

我發現這一個,但我無法弄清楚如何使用它 Calculating Pearson correlation and significance in Python

該解決方案是給一個答案,但問題是,我不能讓輸出我想 http://lilithelina.tumblr.com/post/135265946959/data-analysis-pearson-correlation-python

回答

0

讀你的數據作爲大熊貓數據框(比方說,df)。致電df.T.corr().unstack().reset_index().unstack()構建分層索引,.reset_index()將其轉換爲列,.T將行關聯到列。

results = df.T.corr().unstack().reset_index(name="corr") 
print(results) 
# level_0 level_1  corr 
#0 A1L020 A1L020 1.000000 
#1 A1L020 A1X283 0.993933 
#2 A1L020 A2A3N6 0.499363 
#3 A1L020 A2RTX5 0.408248 
#.... 
results.to_csv("some_file.csv") 
+0

增加'.unstack()'。 – DyZ

+0

剛剛做了 - 並更改了列名。 – DyZ

+0

您必須將數據另存爲CSV,而不是XLS:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_excel.html – DyZ

相關問題