Pandas用空字符串替换NaN

2020-12-02 20:24:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Pandas数据框,如下所示:

    1    2       3
 0  a  NaN    read
 1  b    l  unread
 2  c  NaN    read

我要删除带有空字符串的NaN值,使其看起来像这样:

    1    2       3
 0  a   ""    read
 1  b    l  unread
 2  c   ""    read
3条回答
网友
1楼 ·
df = df.fillna('')

或者只是

df.fillna('', inplace=True)

这将用''填充na(例如NaN)。

如果要填充单个列,可以使用:

df[column1] = df.column1.fillna('')
网友
2楼 ·
import numpy as np
df1 = df.replace(np.nan, '', regex=True)

这可能会有帮助。它将用空字符串替换所有nan。

网友
3楼 ·

如果要从文件(如CSV或Excel)读取数据帧,请使用:

  • df.read_csv(path , na_filter=False)
  • df.read_excel(path , na_filter=False)

这将自动将空字段视为空字符串''


如果你已经有了数据帧

  • df = df.replace(np.nan, '', regex=True)
  • df = df.fillna('')

相关问题