Heim  >  Artikel  >  Backend-Entwicklung  >  Wie ersetze ich ein Komma in einer String-Spalte eines Pandas DataFrame?

Wie ersetze ich ein Komma in einer String-Spalte eines Pandas DataFrame?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-30 16:37:26517Durchsuche

How to Replace a Comma in a String Column of a Pandas DataFrame?

So ersetzen Sie Text in einer Zeichenfolgenspalte eines Pandas-Datenrahmens

In Pandas kann es vorkommen, dass Sie den Inhalt ändern müssen einer Textspalte, beispielsweise das Ersetzen eines bestimmten Zeichens oder einer bestimmten Zeichenfolge. Dies kann mit der leistungsstarken Ersetzungsmethode erreicht werden.

Sie haben erwähnt, dass es eine Spalte gibt, die in Klammern eingeschlossene Werte enthält und zwei Zahlen durch ein Komma trennt. Ihr Ziel ist es, das Komma durch einen Bindestrich zu ersetzen. Ihr aktueller Ansatz mit org_info_exc['range'].replace(',', '-', inplace=True) funktioniert jedoch nicht.

Das Problem liegt in der Syntax Ihres Codes. Bei der Ersetzungsmethode müssen Sie die genaue Zeichenfolge oder den regulären Ausdruck angeben, der ersetzt werden soll. In Ihrem Fall stimmt das Komma nicht exakt mit dem gesamten Wert überein.

Um das Komma korrekt zu ersetzen, sollten Sie die folgende Methode verwenden:

<code class="python">df['range'] = df['range'].str.replace(',','-')</code>

Hier verwenden wir vektorisierte str-Methode, die es uns ermöglicht, auf jedes Element in der Spalte eine String-Transformation anzuwenden. Die Ersetzungsfunktion benötigt zwei Parameter: die ursprüngliche Zeichenfolge, die ersetzt werden soll, und die neue Zeichenfolge, durch die sie ersetzt werden soll.

Dieser Code verwendet den regulären Ausdruck „“, um das Kommazeichen abzugleichen, unabhängig von seiner Position innerhalb der Zeichenfolge .

BEARBEITEN:

Analysieren Ihres ursprünglichen Versuchs:

<code class="python">df['range'].replace(',','-',inplace=True)</code>

In der Beschreibung für diesen Ansatz in der Pandas-Dokumentation heißt es: „str: string genau passende to_replace wird durch value ersetzt.“ Da die Zeichenfolgen in Ihrer Spalte nicht genau mit dem Kommazeichen übereinstimmen, erfolgt die Ersetzung nicht.

Wenn wir umgekehrt eine genaue Übereinstimmung für das Kommazeichen bereitstellen, wie unten gezeigt, erfolgt die Ersetzung:

<code class="python">df = pd.DataFrame({'range':['(2,30)',',']})
df['range'].replace(',','-', inplace=True)

df['range']

0    (2,30)
1         -
Name: range, dtype: object</code>

In diesem modifizierten Beispiel enthält die zweite Zeile eine genaue Übereinstimmung für das Komma und die Ersetzung erfolgt.

Das obige ist der detaillierte Inhalt vonWie ersetze ich ein Komma in einer String-Spalte eines Pandas DataFrame?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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