在1-10之间缩放python数据帧特定列的值

在1-10之间缩放python数据帧特定列的值,python,pandas,dataframe,scale,normalization,Python,Pandas,Dataframe,Scale,Normalization,我有一个包含youtube视频视图的数据框,我想将这些值缩放到1-10的范围内。 下面是值的示例?我如何在1-10范围内对其进行规范化,或者有没有更有效的方法来实现这一点 rating 4394029 274358 473691 282858 703750 255967 3298456 136643 796896 2932 220661 48688 4661584 2526119 332176 7189818 322896 188162 157437 1153128 788310 1307902

我有一个包含youtube视频视图的数据框,我想将这些值缩放到1-10的范围内。 下面是值的示例?我如何在1-10范围内对其进行规范化,或者有没有更有效的方法来实现这一点

rating
4394029
274358
473691
282858
703750
255967
3298456
136643
796896
2932
220661
48688
4661584
2526119
332176
7189818
322896
188162
157437
1153128
788310
1307902

一种可能是使用
max
执行缩放

1 + df / df.max() * 9

       rating
0    6.500315
1    1.343433
2    1.592952
3    1.354073
4    1.880933
5    1.320412
6    5.128909
7    1.171046
8    1.997531
9    1.003670
10   1.276217
11   1.060946
12   6.835232
13   4.162121
14   1.415808
15  10.000000
16   1.404192
17   1.235536
18   1.197075
19   2.443451
20   1.986783
21   2.637193

温家宝的类似解决方案(现已删除):


OP说他们想要的是1-10,不是0-10,应该是1-10@NikitaGupta现在呢?我删除了我的,因为它类似于,
1+(df.min())*9/(df.max()-df.min())
@Wen它看起来正确并且给出了(几乎)相同的结果,所以我添加了它作为替代品。:-)
1 + (df - df.min()) * 9 / (df.max() - df.min())

       rating
0    6.498887
1    1.339902
2    1.589522
3    1.350546
4    1.877621
5    1.316871
6    5.126922
7    1.167444
8    1.994266
9    1.000000
10   1.272658
11   1.057299
12   6.833941
13   4.159739
14   1.412306
15  10.000000
16   1.400685
17   1.231960
18   1.193484
19   2.440368
20   1.983514
21   2.634189