First you can select a subset of the columns using df[['A','B','C']] , then apply notnull and indicate whether all values ββin the True mask are:
print (df[['A','B','C']].notnull()) ABC 0 True True True 1 True False True 2 True False False 3 False True True print (df[['A','B','C']].notnull().all(1)) 0 True 1 False 2 False 3 False dtype: bool print (df[df[['A','B','C']].notnull().all(1)]) ABC 0 1.0 1.0 1.0
Another solution from Ayhan comment with dropna :
print (df.dropna(subset=['A', 'B', 'C'])) ABC 0 1.0 1.0 1.0
what is the same as
print (df.dropna(subset=['A', 'B', 'C'], how='any'))
and means deleting all rows where there is at least one NaN value.
source share