Heim > Backend-Entwicklung > Python-Tutorial > Wie rufe ich den Namen der Spalte mit dem Maximalwert für jede Zeile in einem Pandas DataFrame ab?

Wie rufe ich den Namen der Spalte mit dem Maximalwert für jede Zeile in einem Pandas DataFrame ab?

Mary-Kate Olsen
Freigeben: 2024-11-28 12:41:12
Original
746 Leute haben es durchsucht

How to retrieve the name of the column with the maximum value for each row in a Pandas DataFrame?

Abrufen des Maximalwert-Spaltennamens für jede Zeile

In einem DataFrame, der aus verschiedenen Spalten und Zeilen besteht, besteht eine häufige Aufgabe darin, die zu identifizieren Spalte mit dem Maximalwert für jede Zeile. Betrachten Sie den folgenden DataFrame:

Communications and Search Business General Lifestyle<br>0 0,745763 0,050847 0,118644 0,084746<br>0 0,333333 0,000000 0,583333 0,083333<br>0 0,617021 0,042553 0,297872 0,042553<br>0 0,435897 0,000000 0,410256 0,153846<br>0 0,358974 0,076923 0,410256 0,153846<br>

Unser Ziel ist es, eine neue Spalte mit der Bezeichnung „Max“ zu erstellen, die den Spaltennamen enthält, der dem Maximalwert in jeder Zeile zugeordnet ist. Die gewünschte Ausgabe ähnelt der folgenden:

Kommunikation und Suche Business General Lifestyle Max<br>0 0,745763 0,050847 0,118644 0,084746 Kommunikation <br>0 0,333333 0,000000 0,583333 0,083333 Geschäft <br>0 0,617021 0,042553 0,297872 0,042553 Kommunikation <br>0 0,435897 0,000000 0,410256 0,153846 Kommunikation <br>0 0,358974 0,076923 0,410256 0,153846 Geschäft <br>

Um dies zu erreichen, können wir die idxmax-Funktion verwenden:

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 index with the maximum value in each row
max_column_idxs = df.idxmax(axis=1)

# Create a new column with the column names
df['Max'] = max_column_idxs

# Display the updated DataFrame
print(df)
Nach dem Login kopieren

Durch Verwendung der idxmax-Funktion mit dem auf 1 gesetzten Achsenparameter , ermitteln wir für jede Zeile den Spaltenindex mit dem Maximalwert. Diese Informationen werden dann verwendet, um eine neue Spalte mit dem Namen „Max“ zu erstellen, die den entsprechenden Spaltennamen für den Maximalwert jeder Zeile identifiziert. Der resultierende DataFrame weist das angeforderte Format auf.

Das obige ist der detaillierte Inhalt vonWie rufe ich den Namen der Spalte mit dem Maximalwert für jede Zeile in einem Pandas DataFrame ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage