Pandas DataFrame DataFrame.replace()-Funktion
-
Syntax von
pandas.DataFrame.replace()
: -
Beispiel-Codes: Ersetzen von Werten in DataFrame unter Verwendung von
pandas.DataFrame.replace()
-
Beispiel-Codes: Ersetzen mehrerer Werte in DataFrame mit
pandas.DataFrame.replace()
pandas.DataFrame.replace()
ersetzt Werte in DataFrame durch andere Werte, die Zeichenkette, Regex, Liste, Dictionary, Series
oder eine Zahl sein können.
Syntax von pandas.DataFrame.replace()
:
DataFrame.replace(,
to_replace=None,
value=None,
inplace=False,
limit=None,
regex=False,
method='pad')
Parameter
to_replace |
Zeichenkette, Regex, Liste, Dictionary, Serie, numerisch oder None . Werte im DataFrame, die ersetzt werden müssen |
value |
skalar, dict, list, string, regex oder None . Wert, um alle Werte zu ersetzen, die to_replace mit |
inplace |
Boolesch. Wenn True den Aufrufer DataFrame modifiziert |
limit |
Ganze Zahl. Maximale Größe der Lücke zum Füllen vorwärts oder rückwärts |
regex |
Boolesch. Setzen Sie regex auf True , wenn to_replace und/oder value ein regex ist. |
method |
Zum Austausch verwendete Methode |
Rückkehr
Es gibt einen DataFrame
zurück, der alle angegebenen Felder durch den angegebenen value
ersetzt.
Beispiel-Codes: Ersetzen von Werten in DataFrame unter Verwendung von pandas.DataFrame.replace()
import pandas as pd
df = pd.DataFrame({'X': [1, 2, 3,],
'Y': [4, 1, 8]})
print("Before Replacement")
print(df)
replaced_df=df.replace(1, 5)
print("After Replacement")
print(replaced_df)
Ausgabe:
Before Replacement
X Y
0 1 4
1 2 1
2 3 8
After Replacement
X Y
0 5 4
1 2 5
2 3 8
Hier steht 1
für den Parameter to_replace
und 5
für den Parameter value
in der Methode replace()
. Daher werden alle Einträge mit dem Wert 1
in der df
durch 5
ersetzt.
Beispiel-Codes: Ersetzen mehrerer Werte in DataFrame mit pandas.DataFrame.replace()
Ersetzen durch Listen
import pandas as pd
df = pd.DataFrame({'X': [1, 2, 3,],
'Y': [4, 1, 8]})
print("Before Replacement")
print(df)
replaced_df=df.replace([1,2,3],[1,4,9])
print("After Replacement")
print(replaced_df)
Ausgabe:
Before Replacement
X Y
0 1 4
1 2 1
2 3 8
After Replacement
X Y
0 1 4
1 4 1
2 9 8
Hier steht [1,2,3]
für den Parameter to_replace
und [1,4,9]
für den Parameter value
in der Methode replace()
. Daher wird die Spalte [1,2,3]
im df
durch [1,4,9]
ersetzt.
Ersetzen unter Verwendung von Wörterbüchern
import pandas as pd
df = pd.DataFrame({'X': [1, 2, 3,],
'Y': [3, 1, 8]})
print("Before Replacement")
print(df)
replaced_df=df.replace({1:10,3:30})
print("After Replacement")
print(replaced_df)
Ausgabe:
Before Replacement
X Y
0 1 3
1 2 1
2 3 8
After Replacement
X Y
0 10 30
1 2 10
2 30 8
Sie ersetzt alle Elemente mit dem Wert 1
durch 10
und alle Elemente mit dem Wert 3
durch 30
.
Ersetzen mit Regex
import pandas as pd
df = pd.DataFrame({'X': ["zeppy", "amid", "amily"],
'Y': ["xar", "abc", "among"]})
print("Before Replacement")
print(df)
df.replace(to_replace=r'^ami.$', value='song', regex=True,inplace=True)
print("After Replacement")
print(df)
Ausgabe:
Before Replacement
X Y
0 zeppy xar
1 amid abc
2 amily among
After Replacement
X Y
0 zeppy xar
1 song abc
2 amily among
Es ersetzt alle Elemente mit den ersten drei Zeichen als ami
, gefolgt von einem beliebigen Zeichen mit song
. Hier erfüllt nur amid
die gegebenen Regex und daher wird nur amid
durch song
ersetzt. Obwohl amily
auch die ersten drei Zeichen ami
hat, gibt es zwei Zeichen nach ami
. Daher erfüllt amily
den gegebenen Regex nicht, und daher bleibt amily
gleich und wird nicht ersetzt. Wenn Sie Regex verwenden, stellen Sie sicher, dass regex
auf True
gesetzt ist und inplace=True
den ursprünglichen DataFrame
modifiziert, nachdem Sie die replace()
Methode darauf aufgerufen haben.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn