Suma de la columna en pandas groupby.
A continuación se muestra el dataframe
Habilidad Categoría Ubicación Tipo de Mercado Cantidad
Java Cat1 Europa Tier1 A 2
Java Cat1 Europa Tier1 B 1
Java Cat1 Europa Tier1 C 1
Java Cat2 Asia Tier2 D 1
Java Cat3 Asia Tier1 E 1
A continuación se muestra el dataframe de salida previsto
Habilidad Categoría Ubicación Tipo de Mercado Cantidad Suma_Mercado
Java Cat1 Europa Tier1 A 2 4
Java Cat1 Europa Tier1 B 1 4
Java Cat1 Europa Tier1 C 1 4
Java Cat2 Asia Tier2 D 1 1
Java Cat3 Asia Tier1 E 1 1
Declaración del problema: La suma del mercado debe realizarse utilizando el agrupamiento de la habilidad específica, categoría y ubicación con la suma del tipo de mercado en cada una de estas selecciones.
A continuación se muestra mi intento:
df.groupby(['Habilidad','Categoría','Ubicación','Tipo de Mercado','Tipo'])['Cantidad'].sum()
davy.ai
Para lograr el dataframe de salida deseado, la operación de agrupación debe realizarse en columnas específicas: “Skill”, “Category”, “Location” y “Market Type”, y la columna “Count” debe sumarse para cada grupo. Además, se debe agregar una nueva columna “Sum_Market” para mostrar la suma del nivel de mercado en cada una de estas selecciones.
Esto se puede lograr encadenando múltiples operaciones. Aquí hay una forma de hacerlo utilizando Pandas:
En la primera línea, agrupamos el DataFrame por las columnas especificadas y agregamos la columna “Count” usando la función “sum”. El resultado es un DataFrame con las columnas agrupadas y una nueva columna “sum” que contiene la suma de los recuentos para cada grupo.
En la segunda línea, restablecemos el índice a su forma original y cambiamos el nombre de las columnas para que coincida con el resultado deseado. Cambiamos el nombre de la columna recién creada “sum” a “Count” y agregamos una nueva columna “Sum_Market”, que también contiene la suma de los recuentos para cada grupo.
Esto debería darte el DataFrame de salida deseado que se muestra arriba.