我需要一些关于标准化条件的帮助,我如何标准化一列数据?
Score Rating Result
1 20 1200 -1.264911064
2 30 1300 -1.264911064
3 40 1200 -0.632455532
4 50 1300 -0.632455532
5 60 1200 0
6 70 1300 0
7 80 1200 0.632455532
8 90 1300 0.632455532
9 100 1200 1.264911064
10 110 1300 1.264911064我正在尝试标准化所有的得分者,具有相同的评级,即标准化所有得分,具有评级1200和1300。科学工具包学习。preprocessing.scalar似乎不支持此功能。
发布于 2018-04-13 15:06:52
Groupby Rating,然后对于每个子组,可以使用transform来计算标准化的Z得分:
df['Result'] = df.groupby('Rating').transform(lambda x: (x-x.mean()) / x.std())这将为您提供所需的输出:
Score Rating Result
0 20 1200 -1.264911
1 30 1300 -1.264911
2 40 1200 -0.632456
3 50 1300 -0.632456
4 60 1200 0.000000
5 70 1300 0.000000
6 80 1200 0.632456
7 90 1300 0.632456
8 100 1200 1.264911
9 110 1300 1.264911https://stackoverflow.com/questions/49808914
复制相似问题