如果我在同一行中具有id1和id2为空,则必须删除行。 我做了这些行,但是出错了。
d = {'id1': ['Y22', 'X23', None], 'id2': ['Y10', "Y14", None], 'id3':[77,22,13]}
df = pd.DataFrame(data=d)
df = df[df[pd.notnull(df['id1'])and df[pd.notnull(df['id2'])]]
答案 0 :(得分:3)
在axis=1
上使用df.all()
,并检查id1
和id2
中的所有值是否都不为空,然后将其用作布尔掩码:
df[~df[['id1','id2']].isna().all(axis=1)]
id1 id2 id3
0 Y22 Y10 77
1 X23 Y14 22