python - 用频率替换列值
问题描述
我希望将 Pandas 列中的值替换为列中它们各自的频率。
我知道我可以value_counts
用来检索列中每个值的频率分布。我不确定如何用其各自的频率替换每个出现的值。
一个示例数据框:
a b c
0 tiger 2 3
1 tiger 5 6
2 lion 8 9
的示例输出df['a'].value_counts()
:
tiger 2
lion 1
Name: a, dtype: int64
应用于列“a”时的预期结果:
a b c
0 2 2 3
1 2 5 6
2 1 8 9
解决方案
推荐阅读
- python - Python:递归方法回滚更改?
- javascript - 按键按对象数组分组的循环
- javascript - Array.find 仅适用于比较器中的常量值 - 打字稿
- javascript - 如何更改 chrome 扩展中的活动标签 URL
- r - 从宽到长的数据框,具有多个变量和 ids R
- sql - 返回 Toad 中的最新行
- laravel - 图像干预 图像源不可读 Laravel
- excel - application.IsTrusted 返回 false
- aws-elastictranscoder - 是否可以拍摄 2 个单独的视频并将它们并排放在 AWS 弹性转码器中
- java - 为什么 FileReader 流从文本文件中读取 237、187、191?