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