Python 如何仅在pandas中的任何行为真时获取行?
我有一个数据框Python 如何仅在pandas中的任何行为真时获取行?,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据框 df1=pd.DataFrame({"col1":[True,False,False,True,False], "col2":[False,True,False,True,False], "col3":[Null,True,True,True,False], "Cnt" :[1,2,3,4,5]}) 我只想在co
df1=pd.DataFrame({"col1":[True,False,False,True,False],
"col2":[False,True,False,True,False],
"col3":[Null,True,True,True,False],
"Cnt" :[1,2,3,4,5]})
我只想在col1或col2为真时获取行,即,如果col1和col2中的列仅为布尔值,则第2行和第4行将被删除,按位和将两列链接(&F):
或按子集[col1,col2]进行测试的过滤列,以及按以下方式进行测试的过滤列:
如果可能,混合值-布尔值和其他一些值测试真值:
如果可能,布尔值是字符串表示:
df[df["col1"].eq('True') & df["col2"].eq('True')]
如果在col1和col2中为布尔值,则仅按&对两列进行按位和链接:
或按子集[col1,col2]进行测试的过滤列,以及按以下方式进行测试的过滤列:
如果可能,混合值-布尔值和其他一些值测试真值:
如果可能,布尔值是字符串表示:
df[df["col1"].eq('True') & df["col2"].eq('True')]
试试这样的
df1[df1[["col1","col2"]].all(axis=1)]
否则,您也可以基于单个列运行它
if all(df1['col1']):
print("All True")
else:
print("Not All True")
试试这样的
df1[df1[["col1","col2"]].all(axis=1)]
否则,您也可以基于单个列运行它
if all(df1['col1']):
print("All True")
else:
print("Not All True")