Python 熊猫标准化与条件
我需要一些关于使用条件标准化的帮助,如何标准化一列数据Python 熊猫标准化与条件,python,pandas,scikit-learn,Python,Pandas,Scikit Learn,我需要一些关于使用条件标准化的帮助,如何标准化一列数据 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
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似乎不支持此函数 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.264911
Groupby
评级
,然后对于每个子组,您可以使用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.264911
你能发布你想要的输出吗?标准化分数-1.264911064-1.264911064-0.632455532-0.632455532 0.632455532 1.264911064 1.264911064你能发布你想要的输出吗?标准化分数-1.264911064-1.264911064-0.632455532-0.632455532 0.632455532 0.632455532 1.264911064 1.264911064