PANDAS desde un bucle, imprime un archivo de Excel con varias hojas
Tengo este problema.
for excel in excel_folder:
...
...
writer = pd.ExcelWriter(n, engine='xlsxwriter')
pe_df_1.to_excel(writer, index=False, sheet_name='Sheet1')
writer.save()
writer = pd.ExcelWriter(c, engine='xlsxwriter')
pe_df_2.to_excel(writer, index=False, sheet_name='Sheet1')
writer.save()
writer = pd.ExcelWriter(g, engine='xlsxwriter')
pe_df_3.to_excel(writer, index=False, sheet_name='Sheet1')
writer.save()
Con esta forma, creo muchos nuevos archivos de Excel con una hoja.
El problema es:
¿Cómo puedo hacer un nuevo archivo de Excel con muchas hojas? El nombre de cada hoja debe ser el mismo que el nombre de cada archivo de Excel.
davy.ai
Para crear un archivo de Excel nuevo con varias hojas, puedes crear un objeto escritor de Excel de Pandas con el nombre de archivo deseado, y luego escribir cada hoja en el mismo archivo utilizando el método
to_excel()
con el parámetrosheet_name
configurado con el nombre deseado. Aquí tienes un ejemplo:En el ejemplo, se utiliza el método
pd.ExcelWriter()
para crear un objeto escritor de Excel con el nombre de archivo'archivo_excel_combinado.xlsx'
. Dentro del bucle for, cada dataframe se escribe en el mismo archivo de Excel utilizando el métodoto_excel()
con el parámetrosheet_name
configurado con el valor deexcel
, que es el nombre de cada archivo de Excel. Finalmente, se llama al métodosave()
en el objeto escritor de Excel para guardar el archivo.