Sto avendo un DataFrame con due colonne. Una colonna è riempita con data/ora, l'altra colonna contiene l'offset in ore a UTC del timestamp nella stessa riga.Come impostare l'offset dei timestamp in un dataframe panda?
Il dataframe assomiglia a questo:
In [44]: df
Out[44]:
DATETIME OFFSET
0 2013-01-01 00:00:00+00:00 1
1 2013-01-01 01:00:00+00:00 1
2 2013-01-01 02:00:00+00:00 1
3 2013-01-01 03:00:00+00:00 1
4 2013-01-01 04:00:00+00:00 1
5 2013-01-01 05:00:00+00:00 1
6 2013-01-01 06:00:00+00:00 2
7 2013-01-01 07:00:00+00:00 2
8 2013-01-01 08:00:00+00:00 2
Quello che mi piace di raggiungere è quello di aggiungere l'offset per riga al timestamp:
In [44]: df
Out[44]:
DATETIME OFFSET
0 2013-01-01 00:00:00+01:00 1
1 2013-01-01 01:00:00+01:00 1
2 2013-01-01 02:00:00+01:00 1
3 2013-01-01 03:00:00+01:00 1
4 2013-01-01 04:00:00+01:00 1
5 2013-01-01 05:00:00+01:00 1
6 2013-01-01 06:00:00+02:00 2
7 2013-01-01 07:00:00+02:00 2
8 2013-01-01 08:00:00+02:00 2
Ho provato con la sostituzione tzinfo ma non è riuscito per trovare una soluzione adeguata. Sto pensando a qualcosa di simile al seguente (pseudo codice):
df.apply(lambda x: x['DATETIME'].replace(tzinfo=pytz.utc + x['OFFSET'])
Qualsiasi aiuto è apprezzato.
Grazie, Thomas
Sembra che tu voglia fare 't1.tz_convert (9)' (ma questo non funziona!) –