python - Python DataFrame:根据条件从数据框列中获取计数?
问题描述
name status
0 alex pass
1 alex pass
2 alex unknown
3 marcus pass
4 marcus fail
5 anthony fail
6 paul pass
7 paul unknown
8 paul fail
9 paul pass
如果一个name
列记录有status = pass
。我正在尝试计算status = pass
name count
0 alex 2
1 marcus 1
2 anthony 0
3 paul 2
解决方案
您可以聚合sum
布尔掩码,因为True
s 的处理方式如下1
:
df = df['status'].eq('pass').groupby(df['name']).sum().reset_index(name='count')
print (df)
name count
0 alex 2
1 anthony 0
2 marcus 1
3 paul 2
推荐阅读
- javascript - 使用和不使用构造函数将函数传递给状态的差异
- c - ((size_t *)(vec))[-1] 是否违反严格混叠?
- sql-server - 无法从运行时连接管理器获取托管连接
- oracle - Yii2:跨两个数据库查询
- javascript - 如何在fabricjs画布对象上触发mousedown事件?
- java - 为什么 Java Spec 建议将 int... 用于形式参数,将 int[] 用于功能接口?
- mysql - 将 MS SQL Server 性能查询转换为 MySQL
- node.js - React.js create-react-app Npm 运行构建 - 失败
- php - 如何调整多个图像的大小php
- java - java和Scala中非Asci字符的子字符串