我有一个pandas
DataFrame
,我希望将其分成没有缺失值的观察值和缺少值的观察值。我可以使用dropna()
来获取没有缺失值的行。是否有任何模拟来获取缺少值的行?
#Example DataFrame
import pandas as pd
df = pd.DataFrame({'col1': [1,np.nan,3,4,5],'col2': [6,7,np.nan,9,10],})
#Get observations without missing values
df.dropna()
答案 0 :(得分:8)
按行检查null
并使用布尔索引过滤:
df[df.isnull().any(1)]
# col1 col2
#1 NaN 7.0
#2 3.0 NaN
答案 1 :(得分:2)
~
= 对面 : - )
df.loc[~df.index.isin(df.dropna().index)]
Out[234]:
col1 col2
1 NaN 7.0
2 3.0 NaN
或
df.loc[df.index.difference(df.dropna().index)]
Out[235]:
col1 col2
1 NaN 7.0
2 3.0 NaN