Pandastzinfo被冷杉迷路了

2024-06-01 09:37:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我意识到我的一些数据帧丢失了tzinfo,并确定combinef-first正在丢弃它。我举了一个简短的例子:

df1 = pd.DataFrame(columns=['UTCdatetime','abc'],
                  data=pd.to_datetime('20100101 01:01').tz_localize('UTC'),
                  index=pd.date_range('20140627', periods=1))
print(df1)
df2 = pd.DataFrame(columns=['UTCdatetime','xyz'],
                  data=pd.to_datetime('20121212 12:12').tz_localize('UTC'),
                  index=pd.date_range('20140628', periods=1))
print(df2)
df1 = df2[['UTCdatetime']].combine_first(df1)
print(df1)

输出:

^{pr2}$

在combine-first之前,日期时间都显示UTC。不过,一旦我先组合了_,+00:00(例如UTC)就不见了,尽管时间本身很好。在

我用的是熊猫0.14.0。有没有办法避免失去tzinfo?在

另一方面,有没有一种简单的方法可以通过编程来判断tzinfo是否存在?如果已经存在,则执行tz_localize会引发异常,如果没有,则会引发异常。谢谢!在


Tags: columnstodataframedatadatetimetzfirstpd