Heim  >  Artikel  >  Backend-Entwicklung  >  Wie finde ich den Maximalwert in jeder Zeile eines Pandas DataFrame und füge die entsprechende Spaltenbezeichnung als neue Spalte hinzu?

Wie finde ich den Maximalwert in jeder Zeile eines Pandas DataFrame und füge die entsprechende Spaltenbezeichnung als neue Spalte hinzu?

Linda Hamilton
Linda HamiltonOriginal
2024-11-17 05:58:03439Durchsuche

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

Finden Sie den Maximalwert in jeder Zeile und erstellen Sie eine neue Spalte mit der entsprechenden Spaltenbezeichnung

Sie können Pandas verwenden, um einen DataFrame zu erstellen und Finden Sie den Maximalwert für jede Zeile. Verwenden Sie dazu die Funktion idxmax() zusammen mit dem Parameter axis=1, der angibt, dass für jede Zeile das Maximum spaltenübergreifend ermittelt werden soll. Das Ergebnis ist eine Reihe mit den Spaltenbeschriftungen der Maximalwerte.

Um eine neue Spalte mit diesen Beschriftungen zu erstellen, können Sie das Ergebnis einer Spalte im DataFrame zuweisen. Zum Beispiel:

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)

Ausgabe:

   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

Dadurch wird dem DataFrame eine neue Spalte mit dem Namen „Max“ hinzugefügt, die die Spaltenbezeichnungen der Maximalwerte für jede Zeile enthält.

Das obige ist der detaillierte Inhalt vonWie finde ich den Maximalwert in jeder Zeile eines Pandas DataFrame und füge die entsprechende Spaltenbezeichnung als neue Spalte hinzu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn