Pandas 无法将dataframe转换为拼花地板,TypeError

Pandas 无法将dataframe转换为拼花地板,TypeError,pandas,pyarrow,Pandas,Pyarrow,我试图将数据帧转换为拼花地板文件。但我面临以下错误 result = pa.array(col, type=type_, from_pandas=True, safe=safe) File "pyarrow\array.pxi", line 265, in pyarrow.lib.array File "pyarrow\array.pxi", line 80, in pyarrow.lib._ndarray_to_array File &quo

我试图将数据帧转换为拼花地板文件。但我面临以下错误

result = pa.array(col, type=type_, from_pandas=True, safe=safe)
  File "pyarrow\array.pxi", line 265, in pyarrow.lib.array
  File "pyarrow\array.pxi", line 80, in pyarrow.lib._ndarray_to_array
  File "pyarrow\error.pxi", line 107, in pyarrow.lib.check_status
pyarrow.lib.ArrowTypeError: ('Expected a string or bytes dtype, got float64', 'Conversion failed for column NOTES with type float64')
列类型是varchar,因此它将转换为str。但是该列的记录中有一些数值,我怀疑数据帧是否将它们解析为float。因此,在转换为拼花地板时,它返回一个产生错误的浮点值

是否有办法将这些记录的值转换为str格式

我尝试使用astype(str),但没有成功

是的,拼花地板要求每根柱子有一种类型。要修复上述情况(即混合值类型),请将其转换为如下所示的“字符串”:

df['NOTES'] = df['NOTES'].astype('string') 
# & then ... df.to_parquet(...)

您能否澄清一下,在使用
astype(str)
时,哪些地方不起作用?有同样的错误吗?另外,您是否能够提供一个可重复的小示例?您链接到的内容实际上提到了
astype(str)
作为一种解决方法。