剥离熊猫中的时区信息

新手上路,请多包涵

我一直在努力从熊猫数据框中的列中删除时区信息。我检查了以下问题,但它对我不起作用:

我可以将 pandas DataFrame 导出到 Excel 剥离 tzinfo 吗?

我使用 tz_localize 将时区分配给日期时间对象,因为我需要使用 tz_convert 转换为另一个时区。这将以“-06:00”的方式添加 UTC 偏移量。我需要摆脱这个偏移量,因为当我尝试将数据框导出到 Excel 时它会导致错误。

实际产量

2015-12-01 00:00:00-06:00

期望的输出

2015-12-01 00:00:00

我试图使用 str() 方法获取我想要的字符,但 tz_localize 的结果似乎不是字符串。到目前为止,我的解决方案是将数据帧导出到 csv,读取文件,然后使用 str() 方法获取我想要的字符。

有更简单的解决方案吗?

原文由 Ernesto561 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 339
2 个回答

如果您的系列仅包含日期时间,那么您可以执行以下操作:

my_series.dt.tz_localize(None)

这将删除时区信息(它不会更改时间)并返回一系列原始本地时间,例如可以使用 to_excel() 将其导出到 excel。

原文由 Diego Mora Cespedes 发布,翻译遵循 CC BY-SA 3.0 许可协议

也许有助于去除最后 6 个字符:

 print df
                    datetime
0  2015-12-01 00:00:00-06:00
1  2015-12-01 00:00:00-06:00
2  2015-12-01 00:00:00-06:00

df['datetime'] = df['datetime'].astype(str).str[:-6]
print df
              datetime
0  2015-12-01 00:00:00
1  2015-12-01 00:00:00
2  2015-12-01 00:00:00

原文由 jezrael 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏