有没有办法在同一列中存储具有不同时区的日期时间对象,同时不丢失pandas提供的.dt功能?

编程语言 2026-07-08

我正在处理德国某地的时间数据,该地的时区在一年中会发生变化。

在同一列中包含两种不同的时区时,pandas只会将其识别为对象类型(因为 datetime64[ns, tz1]datetime64[ns, tz2] 是两种不同的类)。因此,'.dt' 在这一列上自然无法工作。

有没有办法绕过这个问题?

解决方案

通过

df.timestamp.dt.tz_convert("Europe/Berlin")

将时区改为 "Europe/Berlin" 时,时区转换会自动完成。它被识别为一个时区,因此pandas不会回退为对象类型,从而保留 '.dt' 的功能。

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章