计算特征和目标变量之间的相关性

新手上路,请多包涵

计算我的特征和目标变量之间相关性的最佳解决方案是什么?我的数据框有 1000 行和 40 000 列……

例子:

 df = pd.DataFrame([[1, 2, 4 ,6], [1, 3, 4, 7], [4, 6, 8, 12], [5, 3, 2 ,10]], columns=['Feature1', 'Feature2','Feature3','Target'])

这段代码工作正常,但这在我的数据框上太长了……我只需要相关矩阵的最后一列:与目标的相关性(不是成对特征相关性)。

 corr_matrix=df.corr()
corr_matrix["Target"].sort_values(ascending=False)

np.corcoeff() 函数适用于数组,但我们可以排除成对特征相关性吗?

原文由 Cox Tox 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 675
2 个回答

您可以在每一列上使用 pandas corr

 df.drop("Target", axis=1).apply(lambda x: x.corr(df.Target))

原文由 w-m 发布,翻译遵循 CC BY-SA 4.0 许可协议

自 2019 年 1 月发布 Pandas 0.24 以来,您可以简单地使用 DataFrame.corrwith()

 df.corrwith(df["Target"])

原文由 Martin Valgur 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题