как быстро зачитать данные листа xlsx (Python) для дальнейшей обработки данных
Имею дело с большими xlsx файлами - более 800 000 строк. Пробовал разные модули/фреймы для зачитки: pandas, openpyxl. Результат всегда один - крайне медленная загрузка или обработка данных. Приходится сначала сохранять как txt, и зачитывать уже его. Например разница в скорости xlsx vs txt для файла 150 000 строк 60сек vs 4 сек, представьте что происходит при 800 000 строк. Есть ли какое-либо решение?
Как пример (expru.xlsx содержит 150 000строк) такой txt отрабатывает за 1-4 сек, xlsx 60-70сек
import time
import openpyxl
start_time = time.time()
wb = openpyxl.load_workbook(filename = 'expru.xlsx', read_only=True)
print(wb.get_sheet_names())
sheet = wb.get_sheet_by_name('Лист1')
rows = sheet.max_row
cols = sheet.max_column
print("размер таблицы = ", rows, 'строк', cols, 'столбцов')
for row in sheet[1:rows]:
string = ''
for cell in row:
string = string + str(cell.value) + ' '
print(string)
print("--- %s seconds ---" % (time.time() - start_time))