Как выбрать строки с NaN в конкретном столбце?


104

Учитывая этот фрейм данных, как выбрать только те строки, у которых "Col2" равно NaN?

In [56]: df = pd.DataFrame([range(3), [0, np.NaN, 0], [0, 0, np.NaN], range(3), range(3)], columns=["Col1", "Col2", "Col3"])

In [57]: df
Out[57]: 
   0   1   2
0  0   1   2
1  0 NaN   0
2  0   0 NaN
3  0   1   2
4  0   1   2

Результат должен быть таким:

Out[57]: 
   0   1   2
1  0 NaN   0

Ответы:


180

Попробуйте следующее:

df[df['Col2'].isnull()]

10
В качестве альтернативы, df.loc[df['Col2'].isnull()]если вам нравится .loc
Александр

2
Q: Как отрицать это, т.е. когда данные в столбце «не равны нулю»? A: с помощью .notnull()оператора.
sk

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.