Pandas:如何将缺少值的列转换为字符串?

2024-09-27 23:28:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要使用SQL炼金术将数据帧从pandas导出到microsoftsqlserver。许多列是字符串,缺少值和一些很长的整数,例如999999999999999999999999999999999999999。这些数字是某种外键,所以值本身没有任何意义,所以我可以把它们转换成字符串。在

在尝试导出到SQL时,这将导致SQL炼金术中出现以下错误:

OverflowError: int too big to convert

我尝试用astype(str)转换为string,但后来遇到了一个问题,即缺少的值(标识为nan)会被转换为字符串“nan”,因此SQL不会将它们视为null,而是将它们视为字符串“nan”。在

我找到的唯一解决方案是先转换为str,然后用努比·楠. 有更好的方法吗?这很麻烦,速度相对较慢,而且尽可能不符合语法:首先,我将所有内容转换为字符串,转换将空值转换为字符串,因此我将这些值转换为NaN(只能是浮点值),最后得到一个混合类型的列。在

或者,我是不是只能忍气吞声,接受熊猫在处理缺失的价值观方面很可怕?在

我举个例子:

^{pr2}$

Tags: 数据字符串pandassql错误数字整数nan

热门问题