【发布时间】:2015-01-25 08:28:58
【问题描述】:
在 pandas 中,我转换了一些来自美国/东部的数据集和一些来自美国/芝加哥的数据集:
data_f1 = data_f[:'2007-04-26 16:59:00']
data_f1.index = data_f1.index.tz_localize('US/Eastern', infer_dst=True).tz_convert('Europe/London')
data_f2 = data_f['2007-04-26 17:00:00':]
data_f2.index = data_f2.index.tz_localize('America/Chicago', infer_dst=True).tz_convert('Europe/London')
data = data_f1.append(data_f2)
我对此有两个问题。
(1) tz_convert() 是否考虑了纽约(或芝加哥)时间和伦敦时间之间的 DST 变化?是否有任何文件支持这一点?我在任何地方都找不到它。
(2) 输出如下:
我不确定时间戳末尾的“+01:00”是什么,但我认为它与 DST 转换有关? + 到底是相对于什么?我不确定这意味着什么或为什么有必要 - 如果我从美国/东部 14:00 转换为欧洲/伦敦 19:00,它只是 19:00,而不是 19:00+01:00?为什么要添加?
当我输出到 Excel 时,我必须手动砍掉“+”之后的所有内容。是否有任何选项可以简单地不输出它(除非它实际上很重要)?
提前感谢您的帮助!
更新: 我发现最接近去除 + 的地方是:Convert pandas timezone-aware DateTimeIndex to naive timestamp, but in certain timezone,但看起来这可能需要很长时间才能处理大量数据。没有更有效的方法吗?
【问题讨论】:
标签: python time pandas dst series