我将一个数据集放入一个包含9组特征和249行的pandas数据框中,我希望得到9个特征之间的协方差矩阵(生成一个9 X 9矩阵),但是,当我使用df.cov()函数时,我只得到一个3 X 3矩阵。我做错了什么
谢谢
下面是我的代码片段
# perform data preprocessing
# only get players with MPG with less than 20 and only select the required colums
MPG_df = df.loc[df['MPG'] >= 20]
processed_df = MPG_df[["FT%", "2P%", "3P%", "PPG", "RPG", "APG", "SPG", "BPG", "TOPG"]]
processed_df
当我试图用下面的代码得到协方差矩阵时,我只得到了一个3x3矩阵
#desired result
cov_processed_df = df = pandas.DataFrame(processed_df, columns=['FT%', '2P%', '3P%', 'PPG', 'RPG', 'APG', 'SPG', 'BPG', 'TOPG']).cov()
cov_processed_df
谢谢
排除的列可能是非数字的(即使它们看起来是这样!)。试一试
要查看原始df的数据类型,可以运行:
如果在结果中看到
"object"
,则表示这些列不是数字。(即使它们至少包含1个非数字数据,也会标记为非数字。)相关问题 更多 >
编程相关推荐