我的pandas数据框具有NAN值。我正在使用'df.dropna'方法删除数据框中的所有缺失值,以便可以将其写回到Oracle数据库表中。 但是在数据库表中,Nan值被替换为0,我希望它们保持Null。 或者,是否有任何方法可以使用包含缺失/ NaN值的数据框更新Oracle表。 NaN应该在数据库内部变为Null。 请帮忙,因为我是python和pandas的新手。
chendodo2009 回答:如何使用Oracle表中的Nans更新熊猫数据框,以使Nans变为NULL?
我正在为此使用
df_new = df.where((pd.notnull(df)),None)
示例:
import pandas as pd
import numpy as np
df = pd.DataFrame(['str1',np.nan])
df
0 str1
1 NaN
df_new = df.where((pd.notnull(df)),None)
df_new
0 str1
1 None
,
可以选择将熊猫数据框写入数据库
df.to_sql('Tablename',connection,if_exists='append',index=False)
它将Nan值替换为NULL值