首页 > 解决方案 > 规范化列:总和为 1

问题描述

我有一个数据框:

  Time   Weight 
   1       4 
   2       2
   3       1
   4       7

如何规范权重列,以使权重列中的值之和等于 1 ?

标签: pythonpandasnumpy

解决方案


您可以将列中的每个值除以Weightsum中的所有值Weight

df['Weight']/df['Weight'].sum()

0    0.285714
1    0.142857
2    0.071429
3    0.500000
Name: Weight, dtype: float64

推荐阅读