我有一个熊猫数据框架如下所示:
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
我有一个熊猫数据框架如下所示:
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
当前回答
df = df.fillna('')
这将用“”填充na(例如NaN)。
Inplace是可能的,但应该避免使用,因为它将被弃用:
df.fillna('', inplace=True)
只填写一列:
df.column1 = df.column1.fillna('')
可以使用df['column1']代替df.column1。
其他回答
df = df.fillna('')
这将用“”填充na(例如NaN)。
Inplace是可能的,但应该避免使用,因为它将被弃用:
df.fillna('', inplace=True)
只填写一列:
df.column1 = df.column1.fillna('')
可以使用df['column1']代替df.column1。
import numpy as np
df1 = df.replace(np.nan, '', regex=True)
这可能会有所帮助。它将用一个空字符串替换所有的nan。
如果你正在从一个文件(比如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('')
我用nan尝试了一列字符串值。
删除nan并填充空字符串:
df.columnname.replace (np。nan, ",regex = True)
删除nan并填充一些值:
df.columnname.replace (np。nan,'value',regex = True)
我试了df。iloc也。但它需要列的下标。所以你需要再看一下表格。简单地说,上述方法减少了一步。
如果你正在将DataFrame转换为JSON, NaN将会给出错误,所以在这个用例中最好的解决方案是将NaN替换为None。 以下是如何做到的:
df1 = df.where((pd.notnull(df)), None)