python - 如何计算有条件的行
问题描述
我如何计算每个类别中有多少与标签相比?
Credit Term Y
0 Excellent 3 safe
1 fair 5 risky
2 poor 3 risky
3 fair 5 risky
4 Excellent 5 safe
5 poor 3 risky
6 Excellent 5 safe
7 poor 3 risky
8 fair 3 safe
9 fair 5 safe
这是我的数据,我想计算有多少安全优秀的穷人和公平,以及有多少风险优秀的穷人和公平,如优秀 3 安全 0 风险等等,我计算:
data[(data['Credit']=='Excellent')&(data['Y']=='safe')].count()
data[(data['Credit']=='Excellent')&(data['Y']=='risky')].count()
或者
elements,counts = np.unique(data['Credit'],return_counts = True)
我怎么能做一张像
safe risky
excellent 3 0
poor 0 3
fair 2 2
解决方案
使用熊猫groupby()
和unstack()
:
data.groupby(['Credit', 'Y']).count().unstack()
推荐阅读
- excel - Excel 在具有隐藏/取消隐藏行宏的特定工作表中选择了错误的单元格
- generics - NestJS 根据上下文在服务中注入存储库
- grid - 如何让 grid.draw 在 RMarkdown 块中呈现?
- git - 如何复制其他分支中的更改并恢复原始分支
- verilog - Modelsim:如何禁用设计中某些模块的 SDF 时序检查?
- python - 如何找到这个 Python 数组的多项式拟合的最大值?
- android - 什么可以用作 data.exists 的替代品
- android - Xamarin ListView 删除添加新项目时留下的空白
- angular - zone.js 预计将在 ProxyZone 中运行
- javascript - 无法在异步等待中重新填充数据