Pandas: слияние рабочих книг и рабочих таблиц в Excel происходит очень медленно - PullRequest
0 голосов
/ 23 марта 2020

Я создал сценарий Python для объединения нескольких книг Excel в одну книгу с несколькими рабочими листами. Каждая рабочая тетрадь имеет около 250 рабочих листов. Размер каждой рабочей книги составляет около 20-25 МБ. Скрипт работает нормально, но проблема крайне медленно работает. Здесь я положил только 4 листа, например. С 4 листами это занимает около 2 часов. Но для 250 листов компиляция целых листов занимает более суток. Пожалуйста, дайте мне знать, в чем может быть проблема?

import pandas as pd
import os
from tqdm import tqdm  # I added this to see the progress, but even without this it is the same issue

os.chdir(r'C:\Users\Me\Desktop\data\Macro')

sheet_list = ['SheetA', 'SheetB', 'SheetB', 'SheetC']


for p in tqdm(range(0, 100)):
    with pd.ExcelWriter('outcome.xlsx') as writer:
        for i in sheet_list:
            df1 = pd.read_excel('1.xlsx', sheet_name=i)
            df2 = pd.read_excel('2.xlsx', sheet_name=i)
            df3 = pd.read_excel('3.xlsx', sheet_name=i)
            df4 = pd.read_excel('4.xlsx', sheet_name=i)
            df5 = pd.read_excel('5.xlsx', sheet_name=i)
            df6 = pd.read_excel('6.xlsx', sheet_name=i)
            df7 = pd.read_excel('7.xlsx', sheet_name=i)
            df8 = pd.read_excel('8.xlsx', sheet_name=i)
            data = pd.concat([df1, df2, df3, df4, df5, df6, df7, df8])
            data.to_excel(writer, sheet_name=i, index=False)
    writer.save()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...