Heim  >  Artikel  >  Backend-Entwicklung  >  Pandas entfernen Zeichen aus einer Liste von Zeichenfolgen

Pandas entfernen Zeichen aus einer Liste von Zeichenfolgen

王林
王林nach vorne
2024-02-06 08:21:111191Durchsuche

Pandas 从一列字符串中删除字符

Frageninhalt

Ich habe einen Datenrahmen, der eine Datumsspalte enthält, die aus Zeichenfolgen in diesem Format besteht. Ich muss das Ende der Zeichenfolge abschneiden, damit sie in ein Datetime-Objekt konvertiert werden kann.

"20231101 05:00:00 america/new_york"
"20231101 06:00:00 america/new_york"

Ich habe diese Methoden erfolglos ausprobiert.

df['Date'] = df['Date'].replace('^.*\]\s*', '', regex=True)
df['Date'] = df['Date'].str.strip(' America/New_York')
df['Date'] = df['Date'].map(lambda x: x.rstrip(' America/NewYork'))``

Und ein paar andere basierend auf meinen Suchanfragen. Gibt es eine einfache Möglichkeit, dies zu tun, oder sollte ich eine Funktion schreiben, um die Zeichenfolge aufzuteilen, indem die ersten 17 Zeichen erfasst und das Ergebnis wieder einem df zugewiesen werden?

Bitte beachten Sie, dass das Format der Zeichenfolge '20231101 05:00:00 america/central'

sein kann

Danke für all die Hilfe.


Richtige Antwort


  • Wenn Sie ein bestimmtes Suffix entfernen möchten, empfehle ich str.removesuffix anstelle von str.strip.
  • Bitte beachten Sie, dass Sie manchmal ein unterstrichenes new_york,有时会编写不带下划线的 newyork。如果您要求删除 'newyork',则 'new_york' schreiben, das nicht gelöscht wird.
  • Nachdem Sie Ihre Frage bearbeitet haben, fügen Sie alles vor 'america' 开头,但后面有所不同;在这种情况下,您可以使用 str.split(' america').str[0] 保留 ' america' als Suffix hinzu.
import pandas as pd

df = pd.DataFrame({
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Date': ["20231101 05:00:00 America/New_York",
             "20231101 06:00:00 America/New_York",
             "20231101 07:00:00 America/Central"]
})

# df['Date'] = df['Date'].str.removesuffix(' America/New_York')
df['Date'] = df['Date'].str.split(' America').str[0]

print(df)
#      Name               Date
# 0    Alice  20231101 05:00:00
# 1      Bob  20231101 06:00:00
# 2  Charlie  20231101 07:00:00

Das obige ist der detaillierte Inhalt vonPandas entfernen Zeichen aus einer Liste von Zeichenfolgen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen