我在一列(指北美)中有"NA",在熊猫读取 CSV 后显示空白



我有一个CSV文件,其中Country列包含国家代码。在这种情况下;NA";指北美。我需要将其转换为UTF-8格式。当使用具有"0"的行下面的代码时;NA";在导出的文件中显示为空白:

df = pd.read_csv(filepath, encoding='UTF-8')
df.to_csv(r'path+filename',header=None ,encoding = 'UTF-8', index = False)

例如,

输入文件:

Week Country PL Sales$
W01   AE     0I  250
W02   NA     0I  130

输出文件:

Week Country PL Sales$
W01   AE     0I  250
W02          0I  130

我已经尝试用"来填充源文件中的其他列;NA";现在也是空白。

'NA'na_values中默认的NaN值之一。使用pd.read_csv():读取csv文件时,需要指示panda排除默认值

keep_default_na:bool,默认True

解析数据时是否包括默认的NaN值。取决于传入na_values,行为如下:

如果keep_default_naTrue,并且指定了na_values,则na_values是附加到用于解析的默认CCD_ 12值。

如果keep_default_naTrue,并且未指定na_values,则只有默认的CCD_ 16值用于解析。

如果keep_default_naFalse,并且指定了na_values,则只有NaN指定的CCD_ 21的值用于解析。

如果keep_default_naFalse,并且未指定na_values,则否字符串将被解析为CCD_ 25。

注意,如果na_filter作为False传入,则keep_default_nana_values参数将被忽略。


这应该可以做到:

df = pd.read_csv(filepath, encoding='UTF-8', keep_default_na=False)

根据您想要执行的其他操作,您可能还需要相应地定义na_values

最新更新