Heim > Backend-Entwicklung > Python-Tutorial > Wie wähle ich DataFrame-Werte basierend auf mehreren Kriterien in Pandas aus?

Wie wähle ich DataFrame-Werte basierend auf mehreren Kriterien in Pandas aus?

Patricia Arquette
Freigeben: 2024-12-05 13:09:10
Original
889 Leute haben es durchsucht

How to Select DataFrame Values Based on Multiple Criteria in Pandas?

Auswahl mit komplexen Kriterien aus pandas.DataFrame

Auswahl spezifischer Werte aus einem DataFrame basierend auf mehreren Kriterien

Nehmen wir an, wir haben einen einfachen DataFrame wie Folgendes:

import pandas as pd
from random import randint

df = pd.DataFrame({'A': [randint(1, 9) for x in range(10)],
                   'B': [randint(1, 9)*10 for x in range(10)],
                   'C': [randint(1, 9)*100 for x in range(10)]})
Nach dem Login kopieren

Unser Ziel ist es, Werte aus Spalte „A“ auszuwählen, die bestimmte Kriterien für entsprechende Werte in Spalten erfüllen 'B' und 'C'.

Ansatz mit Boolescher Indizierung

Um dies zu erreichen, können wir die Boolesche Indizierung verwenden. Zuerst erstellen wir Boolesche Reihenobjekte für jedes Kriterium:

df["B"] > 50
(df["B"] > 50) & (df["C"] != 900)
Nach dem Login kopieren

Diese Booleschen Reihen stellen die Zeilen dar, die die jeweiligen Kriterien erfüllen. Wir können diese Reihen dann als Indizes verwenden, um die gewünschten Werte auszuwählen:

df["A"][df["B"] > 50]
df["A"][(df["B"] > 50) & (df["C"] != 900)]
Nach dem Login kopieren

Ansatz mit .loc

Wir können auch das .loc-Attribut für eine effizientere Indizierung verwenden. Mit .loc können wir die abzurufenden Zeilen und Spalten mit einer einzigen Anweisung angeben:

df.loc[(df["B"] > 50) & (df["C"] != 900), "A"]
Nach dem Login kopieren

Fazit

Beide Methoden wählen effektiv Werte aus dem DataFrame basierend auf komplexen Kriterien aus. Die Wahl zwischen der Verwendung von Boolescher Indizierung oder .loc hängt von den persönlichen Vorlieben und der Lesbarkeit des Codes ab.

Das obige ist der detaillierte Inhalt vonWie wähle ich DataFrame-Werte basierend auf mehreren Kriterien in Pandas aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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