In [1]:
import pandas as pd
import numpy as np
from pandas import DataFrame, Series

In [2]:
data = Series(['one', 'two', np.nan, 'four'])

In [3]:
data


Out[3]:
0     one
1     two
2     NaN
3    four
dtype: object

In [4]:
data.isnull()


Out[4]:
0    False
1    False
2     True
3    False
dtype: bool

In [5]:
data.dropna


Out[5]:
<bound method Series.dropna of 0     one
1     two
2     NaN
3    four
dtype: object>

In [6]:
data


Out[6]:
0     one
1     two
2     NaN
3    four
dtype: object

In [8]:
dframe = DataFrame([[1,2,3],[np.nan, 5,6], [7,np.nan,9], [np.nan,np.nan,np.nan]])

In [9]:
dframe


Out[9]:
0 1 2
0 1.0 2.0 3.0
1 NaN 5.0 6.0
2 7.0 NaN 9.0
3 NaN NaN NaN

In [10]:
clean_dframe = dframe.dropna()

In [11]:
clean_dframe


Out[11]:
0 1 2
0 1.0 2.0 3.0

In [12]:
dframe.dropna(how='all')


Out[12]:
0 1 2
0 1.0 2.0 3.0
1 NaN 5.0 6.0
2 7.0 NaN 9.0

In [13]:
npn = np.nan

dframe2 = DataFrame([[1,2,3, npn], [2, npn, 5,6], [npn,7,npn,9], [1,npn,npn,npn]])
dframe2


Out[13]:
0 1 2 3
0 1.0 2.0 3.0 NaN
1 2.0 NaN 5.0 6.0
2 NaN 7.0 NaN 9.0
3 1.0 NaN NaN NaN

In [14]:
dframe2.dropna(thresh=2)


Out[14]:
0 1 2 3
0 1.0 2.0 3.0 NaN
1 2.0 NaN 5.0 6.0
2 NaN 7.0 NaN 9.0

In [15]:
dframe2.dropna(thresh=3)


Out[15]:
0 1 2 3
0 1.0 2.0 3.0 NaN
1 2.0 NaN 5.0 6.0

In [16]:
dframe.fillna(1)


Out[16]:
0 1 2
0 1.0 2.0 3.0
1 1.0 5.0 6.0
2 7.0 1.0 9.0
3 1.0 1.0 1.0

In [17]:
dframe2.fillna({0:0, 1:1, 2:2, 3:3})


Out[17]:
0 1 2 3
0 1.0 2.0 3.0 3.0
1 2.0 1.0 5.0 6.0
2 0.0 7.0 2.0 9.0
3 1.0 1.0 2.0 3.0

In [18]:
dframe2.fillna(0, inplace=True)

In [19]:
dframe2


Out[19]:
0 1 2 3
0 1.0 2.0 3.0 0.0
1 2.0 0.0 5.0 6.0
2 0.0 7.0 0.0 9.0
3 1.0 0.0 0.0 0.0

In [ ]: