Le comportement par défaut de pandas groupby consiste à transformer le groupe par colonnes en index et à les supprimer de la liste des colonnes du cadre de données. Par exemple, disons que j'ai un dataFrame avec ces colonnes
col1|col2|col3|col4
si j'applique un groupby dis avec les colonnes col2
et col3
de cette façon
df.groupby(['col2','col3']).sum()
Le dataframe df
n'a plus le ['col2','col3']
dans la liste des colonnes. Ils sont automatiquement transformés en index de la trame de données résultante.
Ma question est de savoir comment puis-je effectuer groupby sur une colonne tout en conservant cette colonne dans le cadre de données?
df.groupby(['col2','col3'], as_index=False).sum()
Une autre façon de faire serait:
df.groupby(['col2', 'col3']).sum().reset_index()
Pas sûr, mais je pense que la bonne réponse serait
df.groupby(['col2','col3']).sum()
df = df.reset_index()
Au moins, c’est ce que je fais tout le temps pour éviter les images avec multi-index.