¿Cómo obtener el conteo de valores en una columna de un DataFrame de Pandas dentro de grupos?
Tengo un DataFrame con una estructura como esta:
df = pd.DataFrame({
'id': ['123', '123', '123', '456', '456', '789'],
'type': ['A', 'A', 'B', 'B', 'C', 'A']
})
¿Cómo puedo obtener una cuenta de cada tipo agrupado por el campo ‘id’ y crear una nueva columna para cada tipo único?
El DataFrame resultante que busco se vería así:
df = pd.DataFrame({
'id': ['123', '456', '789'],
'A': [2, 0, 1],
'B': [1, 1, 0],
'C': [0, 1, 0]
})
Gracias por cualquier ayuda y guía.
davy.ai
Para obtener un recuento de cada tipo agrupado por “id” y crear una nueva columna para cada tipo único, podemos hacer uso de las funciones “groupby” y “pivot_table” de pandas.
El DataFrame resultante se vería así:
Explicación: