Heim  >  Artikel  >  Backend-Entwicklung  >  Wie wählt man effizient Zeilen mit minimalen Spaltenwerten in Pandas DataFrames aus?

Wie wählt man effizient Zeilen mit minimalen Spaltenwerten in Pandas DataFrames aus?

Linda Hamilton
Linda HamiltonOriginal
2024-10-26 17:36:02360Durchsuche

How to Efficiently Select Rows with Minimum Column Values in Pandas DataFrames?

Pandas GroupBy und effizientes Auswählen von Zeilen mit minimalen Spaltenwerten

Bei der Arbeit mit Pandas DataFrames ist die Auswahl von Zeilen basierend auf bestimmten Spaltenwerten üblich Aufgabe. In dem Szenario, in dem Sie Zeilen mit dem Mindestwert in einer bestimmten Spalte extrahieren müssen, gibt es eine einfache und effiziente Möglichkeit, dies zu erreichen.

Betrachten Sie zur Veranschaulichung den folgenden DataFrame:

df = pd.DataFrame({'A': [1, 1, 1, 2, 2, 2],
                   'B': [4, 5, 2, 7, 4, 6],
                   'C': [3, 4, 10, 2, 4, 6]})

Um Zeilen mit dem Mindestwert in Spalte B für jeden Wert von A auszuwählen, können wir die Methoden „groupby“ und „idxmin“ verwenden:

minimum_rows = df.loc[df.groupby('A').B.idxmin()]

Diese Operation gruppiert den DataFrame nach Spalte A und identifiziert den Index der Zeile mit dem Mindestwert in Spalte B für jede Gruppe. Die loc-Methode extrahiert dann diese Zeilen, um den Datenrahmen „minimum_rows“ zu erstellen.

   A  B   C
2  1  2  10
4  2  4   4

Wenn Sie den Index zurücksetzen möchten, um aufeinanderfolgende Ganzzahlen sicherzustellen, können Sie die Methode „reset_index“ verwenden:

minimum_rows.reset_index(drop=True)

   A  B   C
0  1  2  10
1  2  4   4

Durch die Nutzung der Methoden „groupby“ und „idxmin“ verfügen Sie über einen effizienten Ansatz zum Auswählen von Zeilen mit dem Mindestwert in einer bestimmten Spalte, ohne dass MultiIndex oder komplexe Vorgänge erforderlich sind.

Das obige ist der detaillierte Inhalt vonWie wählt man effizient Zeilen mit minimalen Spaltenwerten in Pandas DataFrames aus?. 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