Cómo crear una nueva columna basada en una condición en Pandas

A menudo, es posible que desee crear una nueva columna en un DataFrame de pandas en función de alguna condición.

Este tutorial proporciona varios ejemplos de cómo hacerlo usando el siguiente DataFrame:

importar pandas como pd
 importar numpy como np

#create DataFrame
df = pd.DataFrame ({'calificación': [90, 85, 82, 88, 94, 90, 76, 75, 87, 86],
                   'puntos': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19],
                   'asiste': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5],
                   'rebotes': [11, 8, 10, 6, 6, 9, 6, 10, 10, 7]})

#view Los 	puntos de clasificación de DataFrame
 ayudan a los rebotes
0 90 25 5 11
1 85 20 7 8
2 82 14 7 10
3 88 16 8 6
4 94 27 5 6
5 90 20 7 9
6 76 12 6 6
7 75 15 9 10
8 87 14 9 10
9 86 19 5 7

Ejemplo 1: crear una nueva columna con valores binarios

El siguiente código muestra cómo crear una nueva columna llamada ‘Bueno’ donde el valor es ‘sí’ si los puntos en una fila dada están por encima de 20 y ‘no’ si no:

# crear una nueva columna titulada 'Bueno' 
df ['Bueno'] = np. donde (df ​​['puntos']> 20, ' sí ', ' no ')

#view DataFrame 
df

        puntos de rating asiste rebotes Bueno
0 90 25 5 11 sí
1 85 20 7 8 no
2 82 14 7 10 no
3 88 16 8 6 no
4 94 27 5 6 sí
5 90 20 7 9 no
6 76 12 6 6 no
7 75 15 9 10 no
8 87 14 9 10 no
9 86 19 5 7 no

Ejemplo 2: crear una nueva columna con varios valores

El siguiente código muestra cómo crear una nueva columna llamada ‘Bueno’ donde está el valor:

  • ‘Sí’ si los puntos ≥ 25
  • ‘Quizás’ si 15 ≤ puntos <25
  • ‘No’ si los puntos <15
#define función para clasificar jugadores en base a puntos 
def f (fila):
     si fila ['puntos'] <15:
        val = 'no'
    fila elif ['puntos'] <25:
        val = 'tal vez'
    otra cosa :
        val = 'sí'
    volver val

#cree una nueva columna 'Bueno' usando la función anterior 
df ['Bueno'] = df. aplicar (f, eje = 1)

#view DataFrame 
df

        puntos de rating asiste rebotes Bueno
0 90 25 5 11 sí
1 85 20 7 8 tal vez
2 82 14 7 10 no
3 88 16 8 6 tal vez
4 94 27 5 6 sí
5 90 20 7 9 tal vez
6 76 12 6 6 no
7 75 15 9 10 tal vez
8 87 14 9 10 no
9 86 19 5 7 tal vez

Ejemplo 3: crear una nueva columna basada en la comparación con la columna existente

El siguiente código muestra cómo crear una nueva columna llamada ‘assist_more’ donde está el valor:

  • ‘Sí’ si asiste> rebota.
  • ‘No’ de lo contrario.
# crear una nueva columna titulada 'assist_more' 
df ['assist_more'] = np. donde (df ​​['asiste']> df ['rebotes'], ' sí ', ' no ')

#view DataFrame 
df

        puntos de calificación asiste rebotes assist_more
0 90 25 5 11 no
1 85 20 7 8 no
2 82 14 7 10 no
3 88 16 8 6 sí
4 94 27 5 6 no
5 90 20 7 9 no
6 76 12 6 6 no
7 75 15 9 10 no
8 87 14 9 10 no
9 86 19 5 7 no

Puede encontrar más tutoriales de Python aquí .

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Deja un comentario

Crear tablas en R puede parecer complicado, lo realmente importante en la programación (Ya sea que quieras aprender R, Python,…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!