使用 pyArrow 将 pandas.DF 转换为镶木地板时出现此错误:
ArrowInvalid('Error converting from Python objects to Int64: Got Python object of type str but can only handle these types: integer
为了找出哪一列是问题,我在 for 循环中创建了一个新的 df,首先使用第一列,然后为每个循环添加另一列。我意识到错误出现在dtype: object
以 0 开头的列中,我想这就是 pyArrow 想要将该列转换为int
但失败的原因,因为其他值是UUID
我试图传递一个模式:(不确定这是否是要走的路)
table = pa.Table.from_pandas(df, schema=schema, preserve_index=False)
其中架构是:df.dtypes