我有一个pandas数据帧,其中包含一列时间戳和一组时间戳所在的时区 . 将所有这些时间戳转换为UTC时间的最佳方法是什么?
csv中的示例数据:
0,2000-01-28 16:47:00,America/Chicago
1,2000-01-29 16:48:00,America/Chicago
2,2000-01-30 16:49:00,America/Los_Angeles
3,2000-01-31 16:50:00,America/Chicago
4,2000-01-01 16:50:00,America/New_York
2 回答
这可以通过一次转换一个tz来有效地完成(但由于我们有很多,groupby已经将它们分开了) . 这些是本地时间(在给定时区内的IOW),因此
tz_localize
使这些tz感知 . 然后,当我们将它们组合在一起时,它们会自动神奇地转换为UTC .请注意,这是在master / 0.17.0上,很快就会发布 . 溶解<0.17.0以下
在<0.17.0,需要:
转换为UTC
通常:组合2 csv时间列 during 导入(或之前) . 这可以通过一个小的lambda函数来完成 .
要转换(解析)组合信息,存在多个选项 . 大多数都在这里或pandas-docs中描述 . 我个人喜欢
utils.parse
一个 .