python - 计算跨数据框的真/假出现次数(列和行)
问题描述
我尝试在数据框中找到所有“真实”事件的总和
df
A B C D
1 True False True False
2 False False False True
3 True True False True
4 True False False True
结果显示为 8
我试过了
condition_total = df[df.values = True].counts()
我找到了列的解决方案,但没有找到整个数据框的解决方案
解决方案
您可以使用df == something
获取一个矩阵,其中的值等于您要查找的数据。然后,您可以使用计算每行的结果.sum()
,然后再次使用汇总列.sum()
。
以下代码给出了 9 using== False
和 7 using == True
。
import pandas as pd
d = {"A": [True, False, True, True],
"B": [True, False, False, False],
"C": [True, False, False, False],
"D": [False, True, True, False]}
df = pd.DataFrame(data=d)
condition_total = (df == False).sum().sum()
print(condition_total)
与 的比较== True
是多余的,所以它可以是df.sum().sum()
。
推荐阅读
- c# - EF Core 代码优先数据库开发,每列都有显式排序规则
- c - 跨平台CMake项目的结构和依赖
- c++ - c ++ operator = 工作怪异(函数内输出正常,但返回后错误..)
- ruby - 无法加载我构建的 gem
- spring - Spring mvc 忽略列表中的空对象
- php - Laravel:foreach 的总和
- file - 在 Python 中,如何关闭使用 os.startfile() 打开的文件?
- javascript - DropzoneJS - 创建自己的函数来上传文件
- azure - Web.config 在将非 www 重定向到 www 时忽略所有子域
- android - 我的问题是关于屏幕上超大的可绘制对象