Панды: Как перевести время UTC в местное время? - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть серия панд time дат и времени, например:

UTC:  
 0   2015-01-01 00:00:00
1   2015-01-01 01:00:00
2   2015-01-01 02:00:00
3   2015-01-01 03:00:00
4   2015-01-01 04:00:00
Name: DT, dtype: datetime64[ns] 

, которые я хотел бы преобразовать в другой часовой пояс:

time2 = time.dt.tz_localize('UTC').dt.tz_convert('Europe/Rome')
print("CET: ",'\n', time2)

CET:  
0   2015-01-01 01:00:00+01:00
1   2015-01-01 02:00:00+01:00
2   2015-01-01 03:00:00+01:00
3   2015-01-01 04:00:00+01:00
4   2015-01-01 05:00:00+01:00
Name: DT, dtype: datetime64[ns, Europe/Rome]

Но,результат не то, что мне нужно.Я хочу это в форме 2015-01-01 02:00:00 (местное время в UTC 01:00:00), а не 2015-01-01 01:00:00+01:00.

Как я могу это сделать?

РЕДАКТИРОВАТЬ: Пока естьЕще один вопрос, касающийся этой проблемы ( Преобразование DateTimeIndex с учетом часового пояса панд в наивную временную метку, но в определенном часовом поясе ), я думаю, что этот вопрос более актуален, предоставляя ясный и краткий пример того, что кажетсяобщая проблема.

1 Ответ

0 голосов
/ 07 февраля 2019

Оказывается, на мой вопрос уже есть ответ здесь: Преобразование панд с учетом часового пояса DateTimeIndex в наивную временную метку, но в определенном часовом поясе )

Я просто не смог сформулироватьмой вопрос правильно.Во всяком случае, что работает:

time3 = time2.dt.tz_localize(None)
print("Naive: ",'\n', time3)

Naive:  
 0   2015-01-01 01:00:00
1   2015-01-01 02:00:00
2   2015-01-01 03:00:00
3   2015-01-01 04:00:00
4   2015-01-01 05:00:00
Name: DT, dtype: datetime64[ns]`
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...