Pandas no reconociendo NaN como nulo

Tengo un DataFrame, una parte del mismo que se ve así:

introduzca la descripción de la imagen aquí

Leí en el archivo usando esta línea de código:

df = pd.read_table(oname,skiprows=1,sep='\t',usecols=(3,4,5),names=['year','month','snow_depth']) 

Cuando llamo a df.isnull (), recibo False para cada celda cuando el NaN debería aparecer como Verdadero de manera predeterminada, creo. ¿Alguien tiene una idea de por qué esto no está siendo detectado?

EDITAR: Resultados de df.info ()

  Int64Index: 360 entries, 516 to 875 Data columns (total 3 columns): year 360 non-null int64 month 360 non-null int64 snow_depth 360 non-null object dtypes: int64(2), object(1) memory usage: 11.2+ KB 

Parece que sus datos tenían valores de 'NaN' como ' NaN' por lo que puede agregar un read_table a read_table , na_values=[' NaN'] y esto lo agregará a la lista predeterminada de valores para tratar como NaN .

Alternativamente puedes replace usando:

 df.replace(' NaN', np.NaN)