Pandas DataFrame DataFrame.isin() Funktion
-
Syntax von
pandas.DataFrame.isin(values)
-
Beispiel-Codes:
DataFrame.isin()
Mititerable
als Eingabe -
Beispiel-Codes:
DataFrame.isin()
mitDictionary
als Eingabe -
Beispiel-Codes:
DataFrame.isin()
MitSeries
als Eingabe -
Beispielcodes:
DataFrame.isin()
mitDataFrame
als Eingabe
Die Funktion pandas.DataFrame.isin(values)
prüft, ob jedes Element im aufrufenden DataFrame den in den eingegebenen values
angegebenen Wert enthält.
Syntax von pandas.DataFrame.isin(values)
DataFrame.isin(values)
Parameter
values |
iterable - list , tuple , set , usw. Dictionary , Series Dataframe |
Zurück
Es gibt einen DataFrame
von Booleans der gleichen Dimension des aufrufenden DataFrame
zurück, der anzeigt, ob jedes Element die eingegebenen values
enthält.
Beispiel-Codes: DataFrame.isin()
Mit iterable
als Eingabe
Wenn die Python iterable
die Eingabe ist, prüft Pandas DataFrame.isin()
Funktion, ob jeder Wert im DataFrame
irgendeinen Wert in der iterable
enthält.
import pandas as pd
df = pd.DataFrame({'Sales': [100, 200], 'Profit': [200, 400]})
df = df.isin([200, 400])
print(df)
Der Aufrufer DataFrame
ist:
Sales Profit
0 100 200
1 200 400
Ausgabe:
Sales Profit
0 False True
1 True True
Hier sind 200 und 400 in der Liste [200, 400]
vorhanden, daher sind die Werte im zurückgegebenen DataFrame
, deren ursprüngliche Werte 200 und 400 sind, True
. 100
ist nicht in der Liste [200, 400]
, daher gibt der Wert an seiner Position False
zurück.
Beispiel-Codes: DataFrame.isin()
mit Dictionary
als Eingabe
Wenn der Typ des Eingabewertes Dictionary
ist, prüft die Funktion isin()
nicht nur die Werte, sondern auch den key
. Sie gibt nur dann True
zurück, wenn der Spaltenname mit dem key
übereinstimmt und der Zellwert im value
des Dictionaries enthalten ist.
import pandas as pd
df = pd.DataFrame({"Sales": [100, 200], "Profit": [200, 400]})
df = df.isin({"Sales": [200, 400]})
print(df)
Ausgabe:
Sales Profit
0 False False
1 True False
Im ersten Beispiel sind die Werte der Profit
-Spalten beide True
, aber in diesem Beispiel sind sie False
, weil der Spaltenname sich von dem key
im EingabeDictionary unterscheidet.
Es gibt True
in der Spalte Sales
zurück, wenn der Wert im values
des Dictionaries enthalten ist - [200, 400]
.
Beispiel-Codes: DataFrame.isin()
Mit Series
als Eingabe
Wenn der Typ des Eingabewertes Pandas Series
ist, prüft die Funktion isin()
, ob das Element pro Spalte mit dem Wert im gleichen Index der eingegebenen Series
übereinstimmt.
import pandas as pd
df = pd.DataFrame({"Sales": [100, 200], "Profit": [200, 400]})
valueSeries = pd.Series([200, 400])
print(valueSeries)
df = df.isin(valueSeries)
print(df)
Ausgabe:
0 200
1 400
dtype: int64
Sales Profit
0 False True
1 False True
Die Elemente in der Spalte Profit
sind elementweise die gleichen wie die Elemente in der Eingabespalte Series
, daher gibt die Funktion für beide Elemente in dieser Spalte True
zurück.
Beispielcodes: DataFrame.isin()
mit DataFrame
als Eingabe
Wenn der Typ des Eingabewertes Pandas DataFrame
ist, prüft die Funktion isin()
jedes Element im Aufrufer DataFrame
auf Übereinstimmung mit dem Element der Eingabe DataFrame
an der gleichen Position.
Sie gibt True
zurück, wenn die Werte identisch sind, oder False
im Falle einer Nichtübereinstimmung.
import pandas as pd
df = pd.DataFrame({"Sales": [100, 200], "Profit": [200, 400]})
print(df)
valueDf = pd.DataFrame({"Sales": [100, 200], "Profit": [200, 300]})
print(valueDf)
df = df.isin(valueDf)
print(df)
Ausgabe:
Sales Profit
0 100 200
1 200 400
Sales Profit
0 100 200
1 200 300
Sales Profit
0 True True
1 True False
Der Wert an der Position (1, 1)
gibt False
zurück, weil die Werte zwischen dem aufrufenden DataFrame und dem eingegebenen DataFrame unterschiedlich sind.
isin()
prüft nicht nur den Wert elementweise, sondern sie prüft auch, ob der Name der Spalte identisch ist. Sie gibt False
zurück, wenn die Spaltennamen unterschiedlich sind, selbst wenn der Wert in diesen beiden DataFrames derselbe ist.Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook