如何在pandas数据框列中找到一组值之间的相关性 [英] How to find the correlation between a group of values in a pandas dataframe column
本文介绍了如何在pandas数据框列中找到一组值之间的相关性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个数据框df:
ID Var1 Var2
1 1.2 4
1 2.1 6
1 3.0 7
2 1.3 8
2 2.1 9
2 3.2 13
我想为每个ID
因此结果应如下所示:
ID Corr_Coef
1 0.98198
2 0.97073
更新:
必须确保变量的所有列都是int
或float
Must make sure all columns of variables are int
or float
推荐答案
df.groupby('ID').corr()
输出:
Var1 Var2
ID
1 Var1 1.000000 0.981981
Var2 0.981981 1.000000
2 Var1 1.000000 0.970725
Var2 0.970725 1.000000
具有OP输出格式.
df_out = df.groupby('ID').corr()
(df_out[~df_out['Var1'].eq(1)]
.reset_index(1, drop=True)['Var1']
.rename('Corr_Coef')
.reset_index())
输出:
ID Corr_Coef
0 1 0.981981
1 2 0.970725
这篇关于如何在pandas数据框列中找到一组值之间的相关性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文