python - Pandas nunique() 但仅返回 value.counts() > 1
问题描述
我有一个带有用户 ID 的数据框,它是users['user id'].nunique()
返回唯一用户数的结果。返回每个唯一用户 ID的users['user id'].value_counts()
计数。有没有一种方法可以将两者结合起来,我希望出现多次的用户 id 的数量(即 2 个或更多)
任何建议都非常感谢
解决方案
您可以在以下输出上使用掩码value_counts
:
>>> import pandas as pd
>>> d = {'user_id': ['Apple', 'Banana', 'Carrot', 'Carrot', 'Apple']}
>>> users = pd.DataFrame(data=d)
>>> users
user_id
0 Apple
1 Banana
2 Carrot
3 Carrot
4 Apple
>>> counts = users['user_id'].value_counts()
>>> counts
Carrot 2
Apple 2
Banana 1
Name: user_id, dtype: int64
>>> counts_greater_than_1 = counts[counts > 1]
>>> counts_greater_than_1
Carrot 2
Apple 2
Name: user_id, dtype: int64
>>> len(counts_greater_than_1)
2
推荐阅读
- python - scrapy on Macbook 错误:模块“教程”已经存在
- angular - Angular 如何将服务注入组件?
- php - 回显标签(文本)在页面上不可见
- android - android软键盘退格按钮不起作用
- if-statement - 如何在Haml中结束if语句?
- android - Firebase 消息传递 - 什么是“content_available”:真
- java - 如何从项目文件夹中读取数据库
- pyspark - Spark:指望一个窗口不工作毫秒
- php - 访问 PHP 数组对象中的项目
- autohotkey - AutoHotKey:如何计算活动文件夹中的文件数并复制到剪贴板?