Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich die Funktion „isin' von Pandas verwenden, um die Operatoren „IN' und „NOT IN' von SQL nachzuahmen?
Fragen Sie Pandas DataFrames mit der Leistungsfähigkeit von SQLs IN und NOT IN ab
Das Filtern von Daten in Pandas DataFrames ist eine häufige Aufgabe in der Datenverarbeitung. Pandas bietet verschiedene Methoden, um dies zu erreichen, einschließlich der intuitiven isin-Funktion. Dieser Artikel zeigt, wie Sie isin nutzen können, um Daten zu filtern und dabei die IN- und NOT IN-Operatoren von SQL nachzuahmen.
Das Problem verstehen
Die IN- und NOT IN-Operatoren von SQL ermöglichen Ihnen dies Filtern Sie Daten basierend darauf, ob ein Wert in einer bestimmten Liste enthalten oder aus dieser ausgeschlossen ist. Diese Funktionalität ist wichtig, um bestimmte Datensätze zu isolieren oder unerwünschte Daten zu entfernen.
Verwenden von isin zum Filtern von Daten
Pandas bietet die isin-Funktion an, die auf Serienobjekte angewendet wird. Es gibt eine boolesche Maske zurück, die angibt, ob jedes Element in der Serie mit einem Wert in einer bereitgestellten Liste oder einem Array übereinstimmt.
IN-Filterung
Um eine IN-Operation auszuführen, übergeben Sie einfach Die Liste der Werte, die Sie mit der isin-Funktion abgleichen möchten, mit der folgenden Syntax:
something.isin(somewhere)
NOT IN Filtern
Um eine NOT IN-Operation durchzuführen, verwenden Sie den Negationsoperator ~ vor der isin-Funktion:
~something.isin(somewhere)
Arbeitsbeispiel
Betrachten Sie den folgenden DataFrame df und eine Liste der zu behaltenden Länder die Zeilen, in denen das Land in „country_to_keep“ enthalten ist:
df = pd.DataFrame({'country': ['US', 'UK', 'Germany', 'China']}) countries_to_keep = ['UK', 'China']
Ausgabe:
df[df.country.isin(countries_to_keep)]
So finden Sie die Zeilen, in denen das Land nicht in „country_to_keep“ enthalten ist:
country 1 UK 3 China
Ausgabe:
df[~df.country.isin(countries_to_keep)]Vorteile der Verwendung isin
country 0 US 2 Germany
Prägnanz:
Das obige ist der detaillierte Inhalt vonWie kann ich die Funktion „isin' von Pandas verwenden, um die Operatoren „IN' und „NOT IN' von SQL nachzuahmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!