我正在尝试在组中找到 z 值的分数,例如在以下数据中
df:
GROUP VALUE
1 5
2 2
1 10
2 20
1 7
在第 1 组中有值 5、10、7。所以现在我只在他们的组中寻找他们的 zscore
Sample Desired Output:
GROUP VALUE Z_SCORE
1 5 0.5
2 2 0.01
1 10 7
2 20 8.3
1 7 1.3
上面的 zscore 不是真正的计算值,只是一个表示。
我正在尝试以下
def z_score(x):
z = np.abs(stats.zscore(x))
return z
df['Z_SCORE'] = df.groupby(['GROUP'])['Value'].apply(z_score)
但无法成功。我怎样才能做到这一点?