¿Cómo agrupar filas de marcos de datos en una lista en Pandas Groupby?

Supongamos que tiene un DataFrame de pandas que consta de 2 columnas y queremos agrupar estas columnas. En este artículo, discutiremos sobre el mismo. Primero, vamos a crear el marco de datos.

Python3

# importing pandas as pd
import pandas as pd
  
  
# Create the data frame
df = pd.DataFrame({'column1': ['A', 'B', 'C', 'A', 'C',
                               'C', 'B', 'D', 'D', 'A'],
                   'column2': [5, 10, 15, 20, 25, 30, 
                             35, 40, 45, 50]})
  
# Print the dataframe
df

Producción:

Ejemplo #1: Podemos usar el método groupby() en la columna 1 y aplicar el método para aplicar una lista en cada grupo de pandas DataFrame.

Python3

# importing pandas as pd
import pandas as pd
  
  
# Create the data frame
df = pd.DataFrame({'column1': ['A', 'B', 'C', 'A', 'C',
                               'C', 'B', 'D', 'D', 'A'],
                   'column2': [5, 10, 15, 20, 25, 30, 
                             35, 40, 45, 50]})
  
  
# Use groupby method and apply
# method on the dataframe
df = df.groupby('column1')['column2'].apply(list)
  
# Print the dataframe again
df

Producción:

Ejemplo #2: Podemos usar el método groupby() en la columna 1 y el método agg() para aplicar la agregación, que consiste en la función lambda , en cada grupo de pandas DataFrame.

Python3

# importing pandas as pd
import pandas as pd
  
  
# Create the dataframe
df = pd.DataFrame({'column1': ['A', 'B', 'C', 'A', 'C', 
                               'C', 'B', 'D', 'D', 'A'], 
                   'column2': [5, 10, 15, 20, 25, 30,
                               35, 40, 45, 50]})
  
# Use groupby method and agg method 
# with lambda function on the dataframe
df = df.groupby('column1').agg({'column2': lambda x: list(x)})
  
# Print the dataframe again
df

Producción:

Ejemplo #3: Podemos usar el método groupby() en la columna 1 y el método agg() para aplicar la lista de agregación, en cada grupo de pandas DataFrame.

Python3

# importing pandas as pd
import pandas as pd
  
  
# Create the data frame
df = pd.DataFrame({'column1': ['A', 'B', 'C', 'A', 'C',
                               'C', 'B', 'D', 'D', 'A'],
                   'column2': [5, 10, 15, 20, 25, 30, 
                               35, 40, 45, 50]})
  
# Use groupby method and agg method 
# with list as argument on the dataframe
df = df.groupby('column1').agg(list)
  
df

Producción:

Ejemplo #4: Podemos usar el método groupby() en la columna 1 y el método agg() pasando ‘ pd.Series.tolist ‘ como argumento.

Python3

# importing pandas as pd
import pandas as pd
  
  
# Create the data frame
df = pd.DataFrame({'column1': ['A', 'B', 'C', 'A', 'C', 
                               'C', 'B', 'D', 'D', 'A'], 
                   'column2': [5, 10, 15, 20, 25, 30,
                               35, 40, 45, 50]})
  
# Use groupby method and agg method with
# pd.Series.tolist as argument on the dataframe
df = df.groupby('column1').agg(pd.Series.tolist)
  
df

Producción:

Publicación traducida automáticamente

Artículo escrito por manandeep1610 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *