我正在使用具有一列所有值均为None的数据框。默认情况下,此列的dtype是object。我需要它是一个整数类型,可能是int64。为什么无关紧要?这就是我所需要的。
我尝试了以下方法:
df['field'] = df['field'].astype(int)
这是行不通的。错误是:
ValueError:无法将NA转换为整数
insert_data['data_set_key'] = pd.to_numeric(insert_data['data_set_key'], errors='coerce')
这会将dtype转换为
float64
,这根本不是我想要的。附录:
SQL Alchemy正在使用该数据框填充Oracle数据库中的表。该表具有当前不填充的整数字段。数据帧中的字段加载了None,然后具有dtype对象。加载此数据后,这似乎被解释为CLOB类型,并且Oracle对其自身进行呕吐。如果我将None更改为1,则效果很好。但这不是一个选择。
最佳答案
答案是我没有尝试过的一件事,因为它根本不起作用。将np.NaN替换为None将导致该表在所需字段中填充为NULL。