栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

pandas使用单独的时区列转换日期时间

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

pandas使用单独的时区列转换日期时间

这是一种矢量化方法(它将循环

df.time_zone.nunique()
时间):

In [2]: tOut[2]:  datetime         time_zone0 2016-09-19 01:29:13    America/Bogota1 2016-09-19 02:16:04  America/New_York2 2016-09-19 01:57:54      Africa/Cairo3 2016-09-19 11:00:00    America/Bogota4 2016-09-19 12:00:00  America/New_York5 2016-09-19 13:00:00      Africa/CairoIn [3]: for tz in t.time_zone.unique():   ...:         mask = (t.time_zone == tz)   ...:         t.loc[mask, 'datetime'] =    ...:  t.loc[mask, 'datetime'].dt.tz_localize(tz).dt.tz_convert('UTC')   ...:In [4]: tOut[4]:  datetime         time_zone0 2016-09-19 06:29:13    America/Bogota1 2016-09-19 06:16:04  America/New_York2 2016-09-18 23:57:54      Africa/Cairo3 2016-09-19 16:00:00    America/Bogota4 2016-09-19 16:00:00  America/New_York5 2016-09-19 11:00:00      Africa/Cairo

更新:

In [12]: df['new'] = df.groupby('time_zone')['datetime']  .transform(lambda x: x.dt.tz_localize(x.name))In [13]: dfOut[13]:  datetime         time_zone      new0 2016-09-19 01:29:13    America/Bogota 2016-09-19 06:29:131 2016-09-19 02:16:04  America/New_York 2016-09-19 06:16:042 2016-09-19 01:57:54      Africa/Cairo 2016-09-18 23:57:543 2016-09-19 11:00:00    America/Bogota 2016-09-19 16:00:004 2016-09-19 12:00:00  America/New_York 2016-09-19 16:00:005 2016-09-19 13:00:00      Africa/Cairo 2016-09-19 11:00:00


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/624643.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号