在读取从SQL数据库到pandas数据帧的大关系时,有一个进度条会很好,因为元组的数量是静态已知的,并且可以估计I / O速率。看起来tqdm
模块有一个函数tqdm_pandas
,它将报告映射函数在列上的进度,但默认情况下调用它不会像这样报告I / O上的进度。是否可以使用tqdm
在调用pd.read_sql
时创建进度条?
答案 0 :(得分:7)
您可以使用chunksize
参数执行以下操作:
chunks = pd.read_sql('SELECT * FROM table', con=conn, chunksize=100)
df = pd.DataFrame()
for chunk in tqdm(chunks):
df = pd.concat([df, chunk])
我认为这也会减少使用内存。