Ersetzen von Zeichen in einer Pandas-Dataframe-String-Spalte
Es kann vorkommen, dass Sie über eine Dataframe-Spalte mit Textdaten verfügen und bestimmte ersetzen müssen Charaktere. Betrachten wir ein Szenario mit einer Spalte namens „Bereich“ mit Werten im folgenden Format:
range "(2,30)" "(50,290)" "(400,1000)"
Ihr Ziel ist es, die Kommas durch Bindestriche zu ersetzen. Allerdings standen Sie bei der folgenden Methode vor Herausforderungen:
org_info_exc['range'].replace(',', '-', inplace=True)
Lösung:
Anstatt die Ersetzungsfunktion direkt auf der Pandas-Serie zu verwenden, verwenden Sie die vektorisierte str-Methode. So erzielen Sie das gewünschte Ergebnis:
df['range'] = df['range'].str.replace(',','-')
Nachdem Sie diesen Code ausgeführt haben, wird Ihr Datenrahmen wie folgt aktualisiert:
range 0 (2-30) 1 (50-290)
Grund für vorherigen Fehler:
Wenn Sie die Ersetzungsfunktion für eine Pandas-Serie verwenden, wird versucht, exakte Zeichenfolgenübereinstimmungen zu ersetzen. Da das Kommazeichen in Ihrem Beispiel nicht exakt übereinstimmt, ist die Ersetzung fehlgeschlagen. Die str-Methode hingegen ermöglicht eine vielseitigere String-Manipulation.
Das obige ist der detaillierte Inhalt vonWie ersetze ich Kommas durch Bindestriche in einer Pandas-Dataframe-String-Spalte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!