首页 > 解决方案 > 使用函数 dask.dataframe.read_sql_table 将多个列名作为输入传递给参数 index_col 以创建 dask 数据帧

问题描述

有了这个,我得到ValueError

import dask as dd 
data1 = dd.read_sql_table('TABLE', connection_string, index_col = ['DATE','ITEM'],schema= 'CRE') gives me a value error --> ValueError: Use label when passing an SQLAlchemy instance as the index

当我只使用如下所示的日期时,我可以将数据提取到dask dataframe.

data1 = dd.read_sql_table('TABLE', connection_string, index_col ='DATE',schema= 'CRE') 

标签: pythonsqldask

解决方案


我的猜测是 dd.read_sql_table 需要一个索引列来拆分数据。理想情况下,该列在您的 SQL 数据库中建立索引,以便于分区/分片。

将数据读入 Dask 数据帧后,您就可以对其进行其他操作。但是,请注意,截至 2020-06-27 Dask 数据框不支持多索引。


推荐阅读