我一直在努力从一个Pandas的专栏中删除时区信息。我已经检查了以下问题,但它对我不起作用:
Can I export pandas DataFrame to Excel stripping tzinfo?
我使用tz_localize为datetime对象分配时区,因为我需要使用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()方法获取所需的字符。
有更简单的解决办法吗?
6条答案
按热度按时间sigwle7e1#
如果你的系列只包含日期时间,那么你可以这样做:
my_series.dt.tz_localize(None)
这将删除时区信息(不会更改时间)并返回一系列简单的本地时间,例如可以使用to_excel()将其导出到Excel。
vd8tlhqk2#
也许帮助剥离最后6个字符:
lzfw57am3#
要在具有混合列的DataFrame中从所有日期时间列中删除时区,只需用途:
如果你不能保存df到excel文件,就用这个(不删除时区!):
ugmeyewa4#
根据Beatriz Fonseca的建议,我最终做了以下事情:
bkkx9g8r5#
如果你想从所有datetime64列中删除所有时区,你可以使用这个
krcsximq6#
如果你总是想忽略最后6个字符,你可以简单地切片你的当前字符串: