DataFrame的转置不相关?

时间:2017-04-25 18:58:03

标签: python pandas dataframe

我目前正在处理一个包含不同音乐艺术家评级的CSV,我正在转变为使用熊猫进行关联的DataFrame。问题是,当我转置DataFrame并在其上使用.corr()函数时,它会返回一个空的DataFrame,并且转置的相关性就是我所需要的。有什么想法,为什么它这样做?这是我的代码:

import pandas as pd
musicRatingsFile = "https://raw.githubusercontent.com/aportell/machine-learning/master/MusicRatings.csv"
musicRatingsData = pd.read_csv(musicRatingsFile)
df = DataFrame(musicRatingsData)
df2 = df.dropna()
df3 = df2.transpose()
df3.corr()

1 个答案:

答案 0 :(得分:2)

您有一个由字符串组成的列(您可能希望该列作为索引),并且您还有两列被视为对象,即使它们是数字。你可以用以下方法解决这个问题:

cor = df2.set_index('student').astype('float').T.corr()

cor.head()
Out: 
student             Colton     Bryce  Mikaela Goldrich  Joe Goulet  \
student                                                              
Colton            1.000000 -0.467859         -0.083099   -0.195272   
Bryce            -0.467859  1.000000          0.008893    0.391781   
Mikaela Goldrich -0.083099  0.008893          1.000000    0.341112   
Joe Goulet       -0.195272  0.391781          0.341112    1.000000   
Trevor Martineau  0.174185  0.444854         -0.175762    0.266465  

.T这里采用转置。