繁星coding
用:counter = df[column_names].isnull().all(axis=1).sum()print (counter)样品:df = pd.DataFrame({ 'A':list('abcdef'), 'Uniprot_acc':[np.nan,5,4,5,np.nan,4], 'Uniprot_id':[np.nan,8,9,4,np.nan,np.nan], 'Interpro_domain':[np.nan,3,np.nan,7,np.nan,0], 'E':[5,3,np.nan,9,np.nan,4],})column_names = ['Uniprot_acc', 'Uniprot_id', 'Interpro_domain']print (df) A Uniprot_acc Uniprot_id Interpro_domain E0 a NaN NaN NaN 5.01 b 5.0 8.0 3.0 3.02 c 4.0 9.0 NaN NaN3 d 5.0 4.0 7.0 9.04 e NaN NaN NaN NaN5 f 4.0 NaN 0.0 4.0counter = df[column_names].isnull().all(axis=1).sum()print (counter)2说明:首先按列表过滤列:print (df[column_names]) Uniprot_acc Uniprot_id Interpro_domain0 NaN NaN NaN1 5.0 8.0 3.02 4.0 9.0 NaN3 5.0 4.0 7.04 NaN NaN NaN5 4.0 NaN 0.0然后检查缺失值None和NaNs:print (df[column_names].isnull()) Uniprot_acc Uniprot_id Interpro_domain0 True True True1 False False False2 False False True3 False False False4 True True True5 False True False通过以下方式检查每行是否为真DataFrame.all:print (df[column_names].isnull().all(axis=1))0 True1 False2 False3 False4 True5 Falsedtype: bool并且最后只计数Trues by sum。