Datenreihe mit CET-Datumsformat in tz-aware konvertieren.

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
JMnemonic
User
Beiträge: 1
Registriert: Montag 18. März 2024, 18:55

Guten Tag,

ich scheitere gerade daran, eine au einer Excel-Dati ausgelese Zeitspalte, die in CET (Winterzeit ohne Zeitumstellung), d. h. als UTC+1 formatiert ist, in ein tz-aware Format umzuwandeln.

Ich habe die Daten als string eingelesen:

df = pd.read_excel(
<Pfad>,
<sheet_name>,
dtype={'Timestamp': str}
)

Spalte:

0 2024-04-01 00:00:00
1 2024-04-01 01:00:00
2 2024-04-01 02:00:00
3 2024-04-01 03:00:00
4 2024-04-01 04:00:00

Mit

df['Timestamp'] = pd.to_datetime(df_AURORA['Timestamp'])
df['Timestamp'] = df_AURORA['Timestamp'].dt.tz_localize('CET')

erhalte ich

0 2024-04-01 00:00:00+02:00
1 2024-04-01 01:00:00+02:00
2 2024-04-01 02:00:00+02:00
3 2024-04-01 03:00:00+02:00
4 2024-04-01 04:00:00+02:00

ich möchte aber

+01:00


df['Timestamp'] = df_AURORA['Timestamp'].dt.tz_localize('UCT+1')

funktioniert nicht.

Ich weiß gerade nicht mehr weiter :(

Kann mir jemand weiterhelfen?


Viele Grüße aus Hamburg
Sirius3
User
Beiträge: 17754
Registriert: Sonntag 21. Oktober 2012, 17:20

Das einfachste wäre '+01:00' an all Deine Strings anzuhängen.
Benutzeravatar
__blackjack__
User
Beiträge: 13116
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@JMnemonic: Das geht halt nicht weil am 1.4. keine Winterzeit mehr ist.

Versuch's mal so:

Code: Alles auswählen

In [107]: df[1].dt.tz_localize("+01:00")
Out[107]: 
0   2024-04-01 00:00:00+01:00
1   2024-04-01 01:00:00+01:00
2   2024-04-01 02:00:00+01:00
3   2024-04-01 03:00:00+01:00
4   2024-04-01 04:00:00+01:00
Name: 1, dtype: datetime64[ns, UTC+01:00]
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten