"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo crear una columna basada en condiciones If-Else-Else en Pandas?

¿Cómo crear una columna basada en condiciones If-Else-Else en Pandas?

Publicado el 2024-11-09
Navegar:285

How to Create a Column Based on If-Else-Else Conditions in Pandas?

Crear una columna con condiciones If-Else-Else en Pandas

Para crear una nueva columna basada en una condición if-elif-else , hay dos enfoques principales:

Enfoque no vectorizado

Este enfoque implica definir una función que opera en filas:

def f(row):
    if row['A'] == row['B']:
        val = 0
    elif row['A'] > row['B']:
        val = 1
    else:
        val = -1
    return val

Luego, aplíquelo al marco de datos a lo largo de las filas:

df['C'] = df.apply(f, axis=1)

Enfoque vectorizado

El enfoque vectorizado utiliza np.where para crear la nueva columna directamente:

df['C'] = np.where(
    df['A'] == df['B'], 0, np.where(
    df['A'] >  df['B'], 1, -1)) 

Este enfoque es más eficiente para conjuntos de datos grandes.

Aquí hay un ejemplo que utiliza el marco de datos proporcionado:

Marco de datos de entrada

AB
22
31
13

Marco de datos de salida

ABC
220
311
13-1
Declaración de liberación Este artículo se reimprime en: 1729378457 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3