python - 如何检查数据框中的所有值是否均为 True

标签 python pandas

pd.DataFrame.allpd.DataFrame.any转换为bool所有值,然后使用关键字 True 断言所有身份。只要我们接受非空列表和字符串的计算结果为 True 就可以了。然而,假设情况并非如此。

>>> pd.DataFrame([True, 'a']).all().item()
True  # Wrong

解决方法是断言与 True 相等,但与 True 的比较听起来并不像 Python 那样。

>>> (pd.DataFrame([True, 'a']) == True).all().item()
False  # Right

问题:我们可以断言 True 的身份吗?不使用== True

最佳答案

首先,我不建议这样做。请不要在数据框列中使用混合数据类型 - 这违背了数据框的目的,并且它们并不比列表更有用,也不比循环更高效。

现在,解决您的实际问题,spolier Alert,您无法克服==。但您可以使用 eq 函数隐藏它。您可以使用

df.eq(True).all()

或者,

df.where(df.eq(True), False).all()

请注意

df.where(df.eq(True), False)

       0
0   True
1  False

如果您出于任何其他原因想要将非“True”值转换为 False,您可能会发现这很有用。

关于python - 如何检查数据框中的所有值是否均为 True,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49498466/

相关文章:

python - ansible 剧本的动态组分配

python - 如何在python中将字符串转换为数字

python - Matplotlib/ Pandas : Zoom Part of a Plot with Time Series

c# - 无法将 C# 字典作为参数传递给 ironPython 方法

python - 打开pyxl.utils.exceptions.IllegalcharacterError

python-3.x - 如何根据应用于单列的条件和同一数据帧的另一列上可用的数据绘制子图?

python - 在 matplotlib 线图上向 x 轴和图例添加月份

python - Pandas 将性别列拆分为两列

python - 如何从sklearn获取目标特征名称 `Bunch`

python - 导入错误: No module named 'matplotlib'