Foros Python

Versión completa: Pandas: df.groupby(["id","seccion","tipo"]).sum())
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Buen día,

Estoy trabajando con un framework procedentes de varios ficheros excel, necesito agrupar los datos y sumarlo.

Gracias a pandas y groupby me ha facilitado mucho la labor la verdad, pero al ver el resultado y exportarlo a excel con to_exel() veo que me deja espacios en blanco con los datos que se duplican.
Lo cual tiene sentido, pero en mi caso necesito esos datos,.


Les copio un fragmento del código y la salida
Código:
import pandas as pd

data = {
  'id': [90, 90, 104, 105, 105, 90, 99, 104, 90, 99, 99, 99, 105],
  'seccion': ['ALIMENTACIÓN SECA', 'P.L.S.', 'ALIMENTACIÓN SECA', 'ALIMENTACIÓN SECA', 'P.L.S.', 'CHARCUTERIA', 'P.L.S.', 'ALIMENTACIÓN SECA', 'CHARCUTERIA', 'CHARCUTERIA', 'CHARCUTERIA', 'ALIMENTACIÓN SECA', 'ALIMENTACIÓN SECA'],
  'tipo': ['NACIONAL', 'NACIONAL', 'NACIONAL', 'NACIONAL', 'NACIONAL', 'REGIONAL', 'NACIONAL', 'NACIONAL', 'NACIONAL', 'NACIONAL', 'NACIONAL', 'NACIONAL', 'REGIONAL'],
  'importe': [40.15, 10.25, 15.45, 10.50, 25.60, 10.10, 50.20, 60.50, 70, 25.50, 70, 50, 15.50]
}

df = pd.DataFrame(data)

print(df.groupby(["id","seccion","tipo"]).sum())
Código:
*** Remote Interpreter Reinitialized ***
                                importe
id seccion          tipo           
90  ALIMENTACIÓN SECA NACIONAL    40.15
    CHARCUTERIA      NACIONAL    70.00
                      REGIONAL    10.10
    P.L.S.            NACIONAL    10.25
99  ALIMENTACIÓN SECA NACIONAL    50.00
    CHARCUTERIA      NACIONAL    95.50
    P.L.S.            NACIONAL    50.20
104 ALIMENTACIÓN SECA NACIONAL    75.95
105 ALIMENTACIÓN SECA NACIONAL    10.50
                      REGIONAL    15.50
    P.L.S.            NACIONAL    25.60

Cómo se puede ver los campos que se duplican aparecen vacios y necesitaría que aparezcan en cada campo.

¿Alguna sugerencia? sino me dedicaré a desarrollar un poco de código para que capture el campo anterior en caso que este vacio y listo.

Gracias de antemano y saludos
Código:
print(df.groupby(["id","seccion","tipo"], as_index=False).sum())