python - 规范化列:总和为 1
问题描述
我有一个数据框:
Time Weight
1 4
2 2
3 1
4 7
如何规范权重列,以使权重列中的值之和等于 1 ?
解决方案
您可以将列中的每个值除以Weight
列sum
中的所有值Weight
,
df['Weight']/df['Weight'].sum()
0 0.285714
1 0.142857
2 0.071429
3 0.500000
Name: Weight, dtype: float64
推荐阅读
- c# - 我们可以在 visualstudio csproj 项目文件中配置 NSwagCSharp 代码生成器吗?
- javascript - 是否可以通过 Instagram DM 自动发送消息?
- c# - 如何使用 MailKit 发送嵌入的图像?
- entity-framework-core - 在没有事务的情况下运行 EF 核心迁移?
- javascript - 如何从多个插槽中获取时间
- reactjs - 如何在 ReactJs 中安装和创建可排序树?
- python - Pyinstaller 加载启动画面
- http - 为什么在客户端-服务器通信中使用 https 而不是 SSH 更广泛?
- node.js - 多次调用 next(error) 时的默认错误处理程序
- regex - 正则表达式匹配前面没有另一个字符串的字符串