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?
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!