1、根据是否与自身相等判断是否为nan:
nan是一个代表“不是一个数字”的变量,不代表某一具体值,因此变量nan!=nan,可根据此属性判断某一值是否为nan。
构建一个含有nan的DataFrame:
import numpy as np
import pandas as pd
from numpy import nan
data=pd.DataFrame(np.arange(16).reshape(4,4),index=list('abcd'))
data.iloc[0:3,0:3]=nan
print(data)
0 1 2 3
a NaN NaN NaN 3
b NaN NaN NaN 7
c NaN NaN NaN 11
d 12.0 13.0 14.0 15
遍历每一个元素,若value!=value,则输出:
for row in range(len(data)):
for col in data.columns:
if data[col][row]!=data[col][row]:
print(data[col][row])
nan
nan
nan
nan
nan
nan
nan
nan
nan
2、使用df.fillna(’-’)将nan替换为某一特定内容,再使用是否等于此内容判断初始是否为nan。
将nan的值替换为‘-’:
data2=data.fillna('-')
print(data2)
0 1 2 3
a - - - 3
b - - - 7
c - - - 11
d 12.0 13.0 14.0 15
for row in data2.index:
for col in data2.columns:
if data2[col][row]=='-':
print(data2[col][row])
-
-
-
-
-
-
-
-
-