Konvertieren eine Pandas-Reihe von Datetime in einen String in Python

Vaibhav Vaibhav 23 Januar 2022
Konvertieren eine Pandas-Reihe von Datetime in einen String in Python

Pandas Series ist ein eindimensionales Array, das jeden Datentyp zusammen mit Labels enthalten kann. Angenommen, Sie haben eine Pandas-Reihe von datetime-Objekten. Wir können ein datatime-Objekt in sein String-Äquivalent umwandeln, indem wir die Funktion strftime() und einige Formatcodes verwenden. Aber um die datetime-Objekte einer Pandas-Serie zu konvertieren, ist die Vorgehensweise etwas anders. In diesem Artikel erfahren Sie, wie wir eine solche Konvertierung durchführen können.

Konvertieren eine Pandas-Reihe von datetime-Objekten in ihre String-Äquivalente

Siehe den folgenden Code. Es erzeugt zuerst eine pandas-Serie von datetime-Objekten und wandelt sie dann in eine pandas-Serie von String-Objekten um.

import pandas as pd

dates = pd.to_datetime(
    pd.Series(["01/01/2021", "02/02/2021", "03/03/2021", "04/04/2021", "05/05/2021"]),
    format="%d/%m/%Y",
)
print("Before conversion")
print(dates)
print("After conversion")
dates = dates.dt.strftime("%Y-%m-%d")
print(dates)

Ausgabe:

Before conversion
0   2021-01-01
1   2021-02-02
2   2021-03-03
3   2021-04-04
4   2021-05-05
dtype: datetime64[ns]
After conversion
0    2021-01-01
1    2021-02-02
2    2021-03-03
3    2021-04-04
4    2021-05-05
dtype: object

Beachten Sie den Wert dtype der Ausgabe. Ersteres zeigt an, dass die Serie aus datetime-Objekten besteht, und letzteres zeigt an, dass die Serie aus string-Objekten besteht.

Wir können auch die Funktion lambda verwenden, um den Datentyp der Objekte zu konvertieren. Siehe den folgenden Code für dasselbe. Die Funktion lambda verwendet die Funktion strftime(), um die Konvertierung durchzuführen.

import pandas as pd

dates = pd.to_datetime(
    pd.Series(["01/01/2021", "02/02/2021", "03/03/2021", "04/04/2021", "05/05/2021"]),
    format="%d/%m/%Y",
)
print("Before conversion")
print(dates)
print("After conversion")
dates = dates.apply(lambda x: x.strftime("%Y-%m-%d"))
print(dates)

Ausgabe:

Before conversion
0   2021-01-01
1   2021-02-02
2   2021-03-03
3   2021-04-04
4   2021-05-05
dtype: datetime64[ns]
After conversion
0    2021-01-01
1    2021-02-02
2    2021-03-03
3    2021-04-04
4    2021-05-05
dtype: object
Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.