0

我使用下面的代码将数据从 Snowflake 加载到 Pandas 数据帧很长时间,直到我更新了 snowflake-connector-python==2.7.0 和 pyarrow==5.0.0

    ctx = connector.connect(
        user=user,
        password=pwd,
        account="***.eu-central-1",
        warehouse="***",
        database="***",
    )

    cur = ctx.cursor()

    cur.execute(data_sql)

    # Issue occurs here
    long_data_df = cur.fetch_pandas_all()

一切都按预期工作,但是在更新到提到的版本之后,数据帧是用非唯一的数据帧索引生成的。

指数 可乐
0 val1
0 val2
0 val3
1 val4

使用 pyarrow==3.0.0 和 snowflake-connector-python==2.4.6 (我不确定这个更改/错误发生在哪个版本),数据框如下所示

指数 可乐
1 val1
2 val2
3 val3
4 val4

当您尝试使用非唯一索引执行 pd.concat 数据帧时会出现问题,它会失败并显示pandas.errors.InvalidIndexError: Reindexing only valid with uniquely valued Index objects

4

1 回答 1

0

我们不想降级 pyarrow 和 snowflake-connector-python 包,我们通过在 pandas 数据框中添加索引来解决它

long_data_df = long_data_df.reset_index(drop=True)
于 2021-11-10T10:53:56.980 回答