将数据从Excel导出到PostgreSQL时,NA值转换为NULL

6yoyoihd  于 2023-02-04  发布在  PostgreSQL
关注(0)|答案(1)|浏览(163)

在将数据从Excel导出到POSTGRESQL时,值NA被转换为NULL。它应该以NA的形式存在。我使用python进行以下代码的传输。

try:
    df = pd.read_excel(r"D:\Projects\MLT\File.xlsx")
    # print(df.head(10))
    print(df.shape[0])
except Exception as error:
    print(error,'Unable to Read the Data')

# Create Alchemy Engine to write the data of dataframe on table
try:
    engine   = create_engine('params')
    df.to_sql('table',engine,if_exists='append',schema='schema_name', index=False)
except Exception as error:
    print(error,'Unable to Insert the Data')
fiei3ece

fiei3ece1#

已修复此问题,默认情况下,Pandas将NA处理为Nan,导致NULL。我们可以使用

keep_default_na=False

所以现在读像下面:

df = pd.read_excel(r"D:\Projects\MLT\File.xlsx",keep_default_na=False)

这将解决此问题。参考:Pandas.Read_CSV

相关问题