GOOGLE ADS

domingo, 17 de abril de 2022

¿Cómo agregar Pandas Dataframe a varias hojas de trabajo a partir de FIRST CELL?

Estoy tratando de agregar el marco de datos de Pandas a todas las hojas de trabajo en un archivo de Excel. Sin embargo, el índice del encabezado inicial siempre se convierte en B1 donde estoy tratando de ajustarlo desde A1.

A continuación se muestra el código:

import os
import xlwt
from xlwt.Workbook import *
from pandas import ExcelWriter
import xlsxwriter
from openpyxl import Workbook, load_workbook
Categories = ["Column" + str(column) for column in range(1,10)]
wb1 = Workbook()
for i in range(1,5):
ws = wb1.create_sheet("1_"+ str(i))
for i in range(5):
ws = wb1.create_sheet("2_"+ str(i))
for i in range(5):
ws = wb1.create_sheet("3_"+ str(i))
for i in range(5):
ws = wb1.create_sheet("4_"+ str(i))
for i in range(5):
ws = wb1.create_sheet("5_"+ str(i))
for i in range(5):
ws = wb1.create_sheet("6_"+ str(i))
wb1.save('FrameFiles.xlsx')
df = pd.DataFrame(columns=Categories)
book = load_workbook('FrameFiles.xlsx')
writer = pd.ExcelWriter('FrameFiles.xlsx',engine='openpyxl')
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
for i in wb1.sheetnames:
df.to_excel(writer, sheet_name=i,index=True,startrow=1,startcol=1)
writer.save()

Y el resultado es el siguiente:
ingrese la descripción de la imagen aquí

Quiero que el encabezado comience desde la posición A1, no desde la B1. Lo he intentado con startrow=0 y startcol=0 también, pero el resultado es el mismo. Cualquier sugerencia para resolver este problema sería muy apreciada.


Solución del problema

La columna vacía es su columna de índice, pero no tiene índice en su marco de datos, por lo que está vacía. intente usar index = False y debería obtener lo que espera

df.to_excel(writer, sheet_name=i,index=False,startrow=0,startcol=0)

No hay comentarios.:

Publicar un comentario

Flutter: error de rango al acceder a la respuesta JSON

Estoy accediendo a una respuesta JSON con la siguiente estructura. { "fullName": "FirstName LastName", "listings...