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

Puedes opinar sobre este contenido:
  • 0
  • 0
  • 0
  • 0

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/

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

¿Te hemos ayudado?

Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:

La ayuda no cuesta nada

Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo:

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!