Heim >Backend-Entwicklung >Python-Tutorial >Wie wähle ich DataFrame-Zeilen zwischen zwei Werten in Python mit Pandas aus?

Wie wähle ich DataFrame-Zeilen zwischen zwei Werten in Python mit Pandas aus?

DDD
DDDOriginal
2024-12-02 18:20:12179Durchsuche

How to Select DataFrame Rows Between Two Values in Python with pandas?

Auswählen von Zeilen in einem DataFrame zwischen zwei Werten mit Pythons Pandas

Bei der Arbeit mit Datenanalyse-Frameworks wie Pandas ist es oft notwendig, Zeilen zu filtern basierend auf bestimmten Kriterien. Eine häufige Aufgabe besteht darin, Zeilen auszuwählen, in denen eine bestimmte Spalte in einen bestimmten Wertebereich fällt.

In Ihrem Fall versuchen Sie, einen DataFrame (df) so zu filtern, dass er Zeilen mit Schlusspreiswerten zwischen 99 und 101 enthält Es tritt jedoch der folgende Fehler auf:

ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all()

Dieser Fehler ist auf den Ausdruck zurückzuführen, den Sie für die Zeile verwenden Auswahl:

df[99 <= df['closing_price'] <= 101]

Um diesen Fehler zu beheben, können Sie die von Pandas bereitgestellte Between-Methode nutzen. Mit dieser Methode können Sie einen DataFrame basierend darauf filtern, ob eine bestimmte Spalte einen bestimmten Bereich erfüllt.

So können Sie Ihren Code mit between überarbeiten:

df = df[df['closing_price'].between(99, 101)]

In diesem geänderten Code:

  • df['closing_price'].between(99, 101) erstellt eine boolesche Reihe, die Identifiziert Zeilen, in denen die Werte für den Abschlusspreis zwischen 99 und 101 (einschließlich) liegen.
  • df[ filtert den ursprünglichen DataFrame (df) basierend auf der von between generierten booleschen Reihe. Nur Zeilen mit wahren Werten in der booleschen Reihe werden in den gefilterten DataFrame aufgenommen.

Dieser Ansatz löst das Mehrdeutigkeitsproblem und wählt effizient Zeilen innerhalb des angegebenen Bereichs aus.

Das obige ist der detaillierte Inhalt vonWie wähle ich DataFrame-Zeilen zwischen zwei Werten in Python mit Pandas 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