试图替换我的数据框中列为'nan'的值(注意,而不是'NaN')
我在excel文件中读过,然后尝试替换这样的nan值:
All_items_df = ALL_df[df_items].fillna(' ')
最后我得到一个仍然包含'nan'的输出
All_items_df ['Colour'].head(10)
Out[]:
7 nan
8 nan
9 nan
10 nan
13 nan
14 nan
15 nan
16 nan
18 nan
19 nan
Name: Colour, dtype: object
使用isna()或isnull()检查nan值.value.all()为上述值提供False . 为什么它不承认为nan / na值?
All_items_df ['Colour'].isnull().head(10)
Out[123]:
7 False
8 False
9 False
10 False
13 False
14 False
15 False
16 False
18 False
19 False
Name: Minor Feats, dtype: bool
我正在写一个csv文件并将'nan'写入文件,即使指定不写出nan
All_items_df.to_csv(folderpath + "All_items.csv",encoding="UTF-8", index=False, na_rep='')
2 回答
您的
nan
似乎是字符串,实际上不是空值 . 在继续进行计划执行的任何计算之前,您可以使用此代码将nan
替换为实际的空值:Example :
确保将
nan
值读为NaN
. 您可以通过pd.read_excel
中的参数执行此操作:奇怪的是,默认
nan
在pd.read_excel中不被视为NaN
值: