Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

320
Views
¿Agregar una columna de 'recuento' al resultado de un groupby en pandas?

Creo que esta es una pregunta bastante básica, pero parece que no puedo encontrar la solución.

Tengo un marco de datos de pandas similar al siguiente:

 import pandas as pd df = pd.DataFrame({'A' : ['x','x','y','z','z'], 'B' : ['p','p','q','r','r']}) df

que crea una tabla como esta:

 AB 0 xp 1 xp 2 yq 3 zr 4 zr

Estoy tratando de crear una tabla que represente la cantidad de valores distintos en ese marco de datos. Así que mi objetivo es algo como esto:

 AB c 0 xp 2 1 yq 1 2 zr 2

Sin embargo, no puedo encontrar las funciones correctas para lograr esto. He intentado:

 df.groupby(['A','B']).agg('count')

Esto produce una tabla con 3 filas (como se esperaba) pero sin una columna de 'recuento'. No sé cómo agregar en esa columna de conteo. ¿Podría alguien señalarme en la dirección correcta?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Puedes usar size

 df.groupby(['A','B']).size() Out[590]: AB xp 2 yq 1 zr 2 dtype: int64

Para su solución agregando una de las columnas.

 df.groupby(['A','B']).B.agg('count') Out[591]: AB xp 2 yq 1 zr 2 Name: B, dtype: int64

Actualizar :

 df.groupby(['A','B']).B.agg('count').to_frame('c').reset_index() #df.groupby(['A','B']).size().to_frame('c').reset_index() Out[593]: AB c 0 xp 2 1 yq 1 2 zr 2
over 4 years ago · Santiago Trujillo Report

0

pandas >= 1.1: DataFrame.value_counts

Este es un reemplazo idéntico para df.groupby(['A', 'B']).size() .

 df.value_counts(['A', 'B']) AB zr 2 xp 2 yq 1 dtype: int64
 df.value_counts(['A', 'B']).reset_index(name='c') AB c 0 zr 2 1 xp 2 2 yq 1
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!