gpt4 book ai didi

python - 具有 NUMERIC 数据类型的 pandas to_sql()

转载 作者:搜寻专家 更新时间:2023-10-30 20:33:52 25 4
gpt4 key购买 nike

我通过读取文件并进行一些预处理来加载 Pandas DataFrame - 它有几列数字。比如

            value
1 13654654328.4567895
2 NULL
3 54643215587.6875455

为了不丢失准确性,我计划在 SQL Server 中将其存储为 NUMERIC。由于我不希望 Pandas 将我的数据转换为 float ,我将其作为字符串加载,然后使用 df.to_sql() 插入到 SQL 中。

如果不存在 NULL,它工作正常。但是,如果它包含 null,无论我为 null 输入“”还是 np.nan,它都会将错误报告为“Error converting data type nvarchar to numeric”。似乎它会自动将其转换为无法在 SQL Server 中转换为 NUMERIC 的空字符串。

有什么办法可以解决这个问题。希望一切都用 Python 完成,不需要更多的 SQL 脚本。

最佳答案

我从未使用过 .to_sql 方法,但我想您需要将 NULL 值替换为 None 值。例如:

df.replace([np.nan], [None], inplace=True)

顺便说一句,np.nan 是 float 类型。在 SQL 中,NULL 是类型“nothing”,在 Python 中相当于 None。""和 "NULL"也将被视为字符串。

关于python - 具有 NUMERIC 数据类型的 pandas to_sql(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52284409/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com