在数据库中的整数列中使用 Nan 将数据写入数据库

write data to database with Nan in a integer column in database

由于numpy.nan是python中的一种特殊的float类型,我有一个pandas.Dataframe,一些列由整数和Nan组成。正如我们所知,这些列将是 float 数据类型。我想将 CSV 文件 pandas.Dataframe.to_csv 复制到数据库。但是由于 CSV 中的那些列是浮点数据类型(即使我在 pandas 中为它们设置了 'object' 类型,但是当我这样做时它们被转换为浮点数。to_csv),但是 table 数据库中那些列的模式是整数类型,因此它们将被拒绝加载。这就是我遇到的问题。解决这个问题的好方法是什么?更改数据库架构不好。

例如我有一个数据 = pandas.Dataframe() 如下。 ID:float 值:float

   ID       Value
0  1001.0    500.0 
1  1002.0    NaN
2  NaN       600.0
3  1003.0    800.0

我怎样才能创建这样的 csv:

ID|Value
1001|500 
1002|
|600
1003|800
df.to_csv('yourfile.csv', sep='|', index=None, float_format='%0.0f')

ID|Value
1001|500
1002|
|600
1003|800