Как экспортировать в несколько листов Excel одного CSV-файла через pandas в python - PullRequest
0 голосов
/ 29 января 2020

Я импортировал большой текстовый файл в python pandas. Теперь я хочу экспортировать CSV-файл в несколько Excel, поскольку данные слишком велики, чтобы поместиться в один лист Excel.

Я использую следующие команды:

import pandas as pd
df = pd.read_csv('basel.txt',delimiter='|')
df.to_excel('basel.txt')

К сожалению, я получил следующее ошибка:

****ValueError: This sheet is too large! Your sheet size is: 1158008, 18 Max sheet size is: 1048576, 16384****

Ответы [ 3 ]

0 голосов
/ 29 января 2020

Вы можете разбить на части и записать каждый кусок на одном листе.

import numpy as np

max_sheet_size = 10000  # you may change it
for i, temp in enumerate(np.array_split(df, max_sheet_size)):
    temp.to_excel('basel.xls', sheet_name=f'sheet_{i}')
0 голосов
/ 29 января 2020
import pandas as pd
chunksize = 10 ** 6
for chunk in pd.read_csv('basel.txt', chunksize=chunksize):
    chunk.to_excel('basel_'+str(chunk)+'.excel')

вы можете прочитать файл pandas в виде фрагментов и сохранить каждый фрагмент в файле Excel

0 голосов
/ 29 января 2020

Вы можете записать половину набора данных в другой лист Excel:

import pandas as pd
df = pd.read_csv('basel.txt',delimiter='|')
df.iloc[:df.shape[0]//2,:].to_excel('basel.xls', sheet_name='First Sheet')
df.iloc[df.shape[0]//2:,:].to_excel('basel.xls', sheet_name='Second Sheet')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...