我一直在检查每一行的每个值,如果所有这些都是null,我会删除这样的行:
df = pandas.concat([df[:2], df[3:]])
但是,我认为必须有更好的方法来做到这一点。我一直试图使用面具或做这样的事情:
rows_to_keep = df.apply(
lambda row :
any([if val is None for val in row ])
, axis=1)
我也试过这样的事情(在另一个堆栈溢出问题上建议)
pandas.DataFrame.dropna()
但是我的打印数据框架没有任何差异。
答案 0 :(得分:1)
dropna
会返回一个新的DataFrame,您可能只想要:
df = df.dropna()
或
df.dropna(inplace=True)
如果你有一个更复杂的面具rows_to_keep
,你可以这样做:
df = df[rows_to_keep]