如何筛选DataFrame中含True值的行?解决全量显示问题
筛选DataFrame中包含True值的行
先看你的DataFrame定义:
import pandas as pd df = pd.DataFrame([[False, True],[False, False]], columns=['a', 'b'])
你执行的df == True只是生成了逐元素的布尔判断结果,并没有实现行级筛选。要只保留包含至少一个True值的行,可通过df.any(axis=1)生成行级布尔筛选条件,再用它索引原DataFrame:
# 筛选出存在True值的行 result = df[df.any(axis=1)] print(result)
执行后会输出目标行:
a b 0 False True
补充说明
any(axis=1):对每一行做检查,只要该行有一个元素为True,就返回True- 如果需要筛选所有元素都是True的行,可替换为
df.all(axis=1)
内容的提问来源于stack exchange,提问作者weiming
相关产品推荐
相关产品推荐

