小编典典

在熊猫中用NaN替换空字符串

python

我有一个pandas数据框(通过导入csv文件创建)。我想用NaN替换空白值。一些这些空白值的是空的,一些包含一个(变量数)的空间''' '' '等。

使用这个线程的建议,我有

df.replace(r'\s+', np.nan, regex=True, inplace = True)

它确实替换了仅包含空格的所有字符串,但也替换了其中包含空格的每个字符串,这不是我想要的。

我怎么只替换字符串 只是 空间和空字符串?


阅读 220

收藏
2021-01-20

共1个答案

小编典典

如果您正在读取csv文件,并且想nan 在读取文件 本身 将所有空字符串转换为 则可以使用该选项

skipinitialspace=True

范例程式码

pd.read_csv('Sample.csv', skipinitialspace=True)

这将删除定界符后出现的所有空白,从而使所有空字符串成为 nan

从文档http://pandas.pydata.org/pandas-
docs/stable/io.html

在此处输入图片说明

注意: 此选项甚至会从有效数据中删除前一个空格,如果出于任何原因要保留前一个空格,则此选项不是一个好选择。

2021-01-20