I would like to print all NaN rows in df:
df:
from pandas import *
from numpy import *
df = pd.DataFrame({'Timestamp': {383439: Timestamp('2000-10-26 23:37:43.880000'),
304351: Timestamp('2000-10-26 23:37:52.880000'),
311295: Timestamp('2000-10-26 23:38:18.880000'),
358356: Timestamp('2000-10-26 23:38:21.880000'),
313155: Timestamp('2000-10-26 23:38:22.450000'),
372410: Timestamp('2000-10-26 23:38:27.450000'),
336183: Timestamp('2000-10-27 05:42:32.960000'),
321794: Timestamp('2000-10-27 05:42:47.960000'),
297537: Timestamp('2000-10-27 22:54:11.880000'),
346700: Timestamp('2000-10-27 22:54:14.880000')},
'Flag': {383439: 1.0,
304351: 0.0,
311295: 1.0,
358356: nan,
313155: 1.0,
372410: 0.0,
336183: nan,
321794: nan,
297537: 1.0,
346700: 0.0},
'Value': {383439: nan,
304351: 1,
311295: 0,
358356: nan,
313155: 1,
372410: nan,
336183: 1,
321794: 0,
297537: nan,
346700: nan},
'Number': {383439: 0,
304351: 0,
311295: 0,
358356: 0,
313155: 0,
372410: 0,
336183: 0,
321794: 0,
297537: 0,
346700: 0},
'Id': {383439: 30,
304351: 30,
311295: 30,
358356: 30,
313155: 30,
372410: 2,
336183: 2,
321794: 2,
297537: 2,
346700: 2},
})
I used:
df[df.isna()]
which returned
Timestamp Flag Value Number Id
383439 NaT NaN NaN NaN NaN
304351 NaT NaN NaN NaN NaN
311295 NaT NaN NaN NaN NaN
358356 NaT NaN NaN NaN NaN
313155 NaT NaN NaN NaN NaN
372410 NaT NaN NaN NaN NaN
336183 NaT NaN NaN NaN NaN
321794 NaT NaN NaN NaN NaN
297537 NaT NaN NaN NaN NaN
346700 NaT NaN NaN NaN NaN
What is df[df.isna()] doing and what's the correct way to do it?