@bogatron正确,您可以使用 ,值得注意的是您可以在熊猫本机执行此操作:
df1 = df.where(pd.notnull(df), None)
注意:这会将 的dtype更改为object
。
例:
In [1]: df = pd.DataFrame([1, np.nan])
In [2]: df
Out[2]:
0
0 1
1 NaN
In [3]: df1 = df.where(pd.notnull(df), None)
In [4]: df1
Out[4]:
0
0 1
1 None
注意:您不能做的事情dtype
是使用 ,然后使用DataFrame 方法来重铸DataFrame以允许所有数据类型类型:
df1 = df.astype(object).replace(np.nan, 'None')
遗憾的是这个没有,也没有使用 ,用作品None
看这个(关闭)的问题。
顺便说一句,值得注意的是,对于大多数用例,您不需要将NaN替换为None,请参阅有关 问题。
但是,在这种特定情况下,您似乎可以这样做(至少在回答此问题时)。