Maison >développement back-end >Tutoriel Python >Comment trouver la valeur maximale dans chaque ligne d'un Pandas DataFrame et ajouter l'étiquette de colonne correspondante en tant que nouvelle colonne ?

Comment trouver la valeur maximale dans chaque ligne d'un Pandas DataFrame et ajouter l'étiquette de colonne correspondante en tant que nouvelle colonne ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-17 05:58:03521parcourir

How to find the maximum value within each row of a Pandas DataFrame and add the corresponding column label as a new column?

Trouvez la valeur maximale dans chaque ligne et créez une nouvelle colonne avec l'étiquette de colonne correspondante

Vous pouvez utiliser des pandas pour créer un DataFrame et trouvez la valeur maximale pour chaque ligne. Pour ce faire, utilisez la fonction idxmax() avec le paramètre axis=1, qui spécifie que le maximum doit être trouvé dans les colonnes pour chaque ligne. Le résultat sera une série contenant les étiquettes de colonnes des valeurs maximales.

Pour créer une nouvelle colonne avec ces étiquettes, vous pouvez attribuer le résultat à une colonne du DataFrame. Par exemple :

import pandas as pd

# Create a DataFrame
df = pd.DataFrame({'Communications and Search': [0.745763, 0.333333, 0.617021, 0.435897, 0.358974],
                   'Business': [0.050847, 0.000000, 0.042553, 0.000000, 0.076923],
                   'General': [0.118644, 0.583333, 0.297872, 0.410256, 0.410256],
                   'Lifestyle': [0.084746, 0.083333, 0.042553, 0.153846, 0.153846]})

# Find the column label of the maximum value for each row
max_labels = df.idxmax(axis=1)

# Create a new column with the maximum values
df['Max'] = max_labels

# Print the resulting DataFrame
print(df)

Sortie :

   Communications and Search  Business   General  Lifestyle  Max
0                   0.745763  0.050847  0.118644  0.084746  Communications
1                   0.333333  0.000000  0.583333  0.083333     Business
2                   0.617021  0.042553  0.297872  0.042553  Communications
3                   0.435897  0.000000  0.410256  0.153846  Communications
4                   0.358974  0.076923  0.410256  0.153846     Business

Cela ajoutera une nouvelle colonne appelée « Max » au DataFrame, contenant les étiquettes de colonne des valeurs maximales pour chaque ligne.

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:
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