python - pandas 不同列中唯一值的频率

标签 python pandas

我有一个像这样的 pandas 数据框:

Index   arrival_1   arrival_2   arrival_3
1        elephant    lion        buffalo
2        buffalo     antelope    hippo
3        lion        buffalo     antelope
4        hippo       lion        antelope
5        elephant    buffalo     lion
6        buffalo     lion        hippo

我需要计算所有三列(arrival_1、arrival_2、arrival_3)中每个唯一到达项目的频率,例如大象在所有三个到达列中的频率为 3,狮子的频率为 5。 在 pandas 中如何做到这一点?

预期输出如下:

Item      count
elephant    2
lion        5
buffalo     5
antelope    3
hippo       3

最佳答案

尝试以下。

df.stack().value_counts()

关于python - pandas 不同列中唯一值的频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35972066/

相关文章:

python - 在 db 中存储为字符串后检索相等的 numpy 数组

python - 放大 pygame 中的窗口导致滞后

python - print dataframe.head 给出的输出不是一个漂亮的表格

python - 使用字典创建数据框

python - 用整数列表/元组替换 Pandas DataFrame 列中的值

python - Pandas 数据透视表 : a very surprising result with aggfunc len(x. unique()) 和边距=True

python - 在 Django 中搜索多个字段

python - 如何向 NumPy 数组添加多个额外的列

python - 如何在crawlspider中调试规则?

python - 在 pandas 中按组合并表