我有日期和时间的熊猫系列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当地时间1:00:00),而不是2015-01-01 01:00:00+01:00
。
我该怎么做?
编辑:虽然还有一个问题可以解决这个问题(Convert pandas timezone-aware DateTimeIndex to naive timestamp, but in certain timezone),但我认为这个问题更重要,为出现常见问题提供了清晰明了的示例。
答案 0 :(得分:0)
我发现我的问题已经在这里有了答案: Convert pandas timezone-aware DateTimeIndex to naive timestamp, but in certain timezone)
我只是无法正确表达我的问题。无论如何,有效的方法是:
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]`