我有以下数据帧:
affecting VA affected VB
A 3 B -1
A 4 B 1
B 10 A 2
B 7 A -2
对于每对影响和影响,我想计算VA和VB之间的相关系数和p值(使用scipy.stats.pearsonr)
生成的数据帧类似于:
affecting affected correlation_coefficient P_value
A B ... ...
B A ... ...
def calc_coefficient ( a, b):
cor_coef = scipy.stats.pearsonr(a, b)[0]
Pvalue = scipy.stats.pearsonr(a, b)[1]
return pd.Series(dict(correlation_coef=cor_coef, P_value=Pvalue))
uplifts.groupby(["affecting_product","affected_product"])[["UpliftA","UpliftB"]].apply(calc_coefficient)
此解决方案不起作用并返回:calc_系数()缺少1个必需的位置参数:“b”
为所有组列传递
x
,并为a,b
使用序列x['VA'], x['VB']
:相关问题 更多 >
编程相关推荐