Maison > développement back-end > Tutoriel Python > Comment créer une colonne basée sur des conditions If-Else-Else dans Pandas ?

Comment créer une colonne basée sur des conditions If-Else-Else dans Pandas ?

DDD
Libérer: 2024-10-20 06:55:29
original
306 Les gens l'ont consulté

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

Création d'une colonne avec des conditions If-Else-Else dans Pandas

Pour créer une nouvelle colonne basée sur une condition if-elif-else , il existe deux approches principales :

Approche non vectorisée

Cette approche consiste à définir une fonction qui opère sur les lignes :

<code class="python">def f(row):
    if row['A'] == row['B']:
        val = 0
    elif row['A'] > row['B']:
        val = 1
    else:
        val = -1
    return val</code>
Copier après la connexion

Ensuite , appliquez-le au dataframe le long des lignes :

<code class="python">df['C'] = df.apply(f, axis=1)</code>
Copier après la connexion

Approche vectorisée

L'approche vectorisée utilise np.where pour créer directement la nouvelle colonne :

<code class="python">df['C'] = np.where(
    df['A'] == df['B'], 0, np.where(
    df['A'] >  df['B'], 1, -1)) </code>
Copier après la connexion

Cette approche est plus efficace pour les grands ensembles de données.

Voici un exemple utilisant le dataframe fourni :

Input DataFrame

A B
2 2
3 1
1 3

DataFrame de sortie

A B C
2 2 0
3 1 1
1 3 -1

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal