Pandas 未将 NaN 识别为 null
Pandas not recognizing NaN as null
我有一个 DataFrame,它的一部分如下所示:
我使用这行代码读入了文件:
df = pd.read_table(oname,skiprows=1,sep='\t',usecols=(3,4,5),names=['year','month','snow_depth'])
当我调用 df.isnull() 时,我相信当 NaN 默认情况下应显示为 True 时,每个单元格都会得到 False,我相信。有谁知道为什么这没有被接受?
编辑:df.info()
的结果
<class 'pandas.core.frame.DataFrame'>
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
看起来您的数据 'NaN'
值为 ' NaN'
,因此您可以将其作为参数添加到 read_table
、na_values=[' NaN']
,这会将其添加到默认值要视为 NaN
.
的值列表
或者您可以 replace
他们使用:
df.replace(' NaN', np.NaN)
我有一个 DataFrame,它的一部分如下所示:
我使用这行代码读入了文件:
df = pd.read_table(oname,skiprows=1,sep='\t',usecols=(3,4,5),names=['year','month','snow_depth'])
当我调用 df.isnull() 时,我相信当 NaN 默认情况下应显示为 True 时,每个单元格都会得到 False,我相信。有谁知道为什么这没有被接受?
编辑:df.info()
的结果<class 'pandas.core.frame.DataFrame'>
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
看起来您的数据 'NaN'
值为 ' NaN'
,因此您可以将其作为参数添加到 read_table
、na_values=[' NaN']
,这会将其添加到默认值要视为 NaN
.
或者您可以 replace
他们使用:
df.replace(' NaN', np.NaN)