我使用pandas.DataFrame.dropna方法删除包含NaN的行.此函数返回一个排除已删除行的数据框,如文档中所示.
如何将已删除的行的副本存储为单独的数据框?方法是:
mydataframe[pd.isnull(['list', 'of', 'columns'])]
假设dropna被调用,总是保证返回dropna drop相同的行subset=['list', 'of', 'columns']
?
您可以通过使用一元~
(反转)运算符索引原始DataFrame来执行此操作,以提供NA自由DataFrame的反转.
na_free = df.dropna() only_na = df[~df.index.isin(na_free.index)]
另一种选择是使用ufunc实现~
.
only_na = df[np.invert(df.index.isin(na_free.index))]