- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个由 UTC 时间戳索引的数据框,以及指定时区和夏令时与 UTC 的分钟偏移量的 2 列:
time_zone daylight_saving
END_DATE
2017-06-02 00:00:00+00:00 0 60
2017-06-02 01:00:00+00:00 0 60
2017-06-02 02:00:00+00:00 0 60
2017-06-02 03:00:00+00:00 0 60
2017-06-02 04:00:00+00:00 0 60
我正在尝试使用 pytz.FixedOffset 将时间戳转换为本地时区。使用静态偏移量效果很好,我得到了具有适当时区的日期时间:
In [51]: df.tz_convert(pytz.FixedOffset(120))[['time_zone','daylight_saving']].head()
Out[51]:
time_zone daylight_saving
END_DATE
2017-06-02 02:00:00+02:00 0 60
2017-06-02 03:00:00+02:00 0 60
2017-06-02 04:00:00+02:00 0 60
2017-06-02 05:00:00+02:00 0 60
2017-06-02 06:00:00+02:00 0 60
In [52]: df.tz_convert(pytz.FixedOffset(120))[['time_zone','daylight_saving']].head().index
Out[52]:
DatetimeIndex(['2017-06-02 02:00:00+02:00', '2017-06-02 03:00:00+02:00',
'2017-06-02 04:00:00+02:00', '2017-06-02 05:00:00+02:00',
'2017-06-02 06:00:00+02:00'],
dtype='datetime64[ns, pytz.FixedOffset(120)]', name='END_DATE', freq=None)
但是,为了使用偏移列执行此操作,我需要使用 apply 方法:
In [63]: r_df.apply(lambda r:
r['END_DATE'].tz_convert(pytz.FixedOffset(r['time_zone'] +
r['daylight_saving'])), axis=1).head()
Out[63]:
0 2017-06-02 01:00:00+01:00
1 2017-06-02 02:00:00+01:00
2 2017-06-02 03:00:00+01:00
3 2017-06-02 04:00:00+01:00
4 2017-06-02 05:00:00+01:00
dtype: object
如您在输出中所见,这将返回一个对象系列,而不是我预期的日期时间系列。
如果我尝试使用 pd.to_datetime 将其转换回来,我将被迫将其返回到 UTC,这违背了应用时区的目的。
有没有办法在保留 tz 信息的同时将其转换回 dt?
最佳答案
我偶然发现了同样的问题并将其报告给 Pandas 社区,社区将我重定向到引用相同问题的旧问题。遗憾的是,问题仍然没有解决方案,但如果您想跟踪问题,可以查看:
关于Pandas:tz_convert 使用 apply 返回对象而不是 datetime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50359164/
我正在使用 MySQL 中的 tz_convert() 函数,但我得到的是 Null。 这正常吗?我读到这是错误? SELECT CONVERT_TZ('2004-01-01 12:00:00','P
当我使用以下代码片段时,我可以看到内容已转换 tweets_df['Time'] = pd.to_datetime(tweets_df['Time']) for index, row in tweet
以下命令似乎适用于亚洲的其他位置,但印度的任何位置除外。这里有错误还是我遗漏了什么?这有效: pd.to_datetime(pd.datetime.now()).tz_localize('US/Pac
我有一些数据,如下所示,UTC 格式为 hour。我想根据 time_zone 创建一个名为 local_hour 的新列。我怎样才能做到这一点?似乎 pandas 的 tz_convert 不允许将
我有一个由 UTC 时间戳索引的数据框,以及指定时区和夏令时与 UTC 的分钟偏移量的 2 列: time_zone daylight_savi
我有一个数据框,其中 hour列包含 UTC 格式的日期时间数据。我有一个 time_zone每个观察的时区列,我用它来转换 hour到本地时间并将其保存在名为 local_hour 的新列中.为此,
我正在尝试根据标准为 Pandas 数据框中的各个行设置不同的时区。作为一名 MWE,以下是我尝试过的方法: test = pd.DataFrame( data = pd.to_datetime(['
我正在使用 pandas-0.8rc2 读取包含两列本地化的输入 CSV缺少 UTC 偏移信息的日期时间字符串,需要数据帧系列正确转换为 UTC。 我一直在尝试解决方法来缓解时间戳列都没有的事实代表索
我的理解是 EST、US/Eastern 和 America/New_York 应该是一样的,但显然我错了。 当我执行以下操作时: pd.Timestamp('2011-07-03T07:00:00-
在下面的脚本中,为什么 tz 和 tz2 不同? import pandas import pytz tz = pytz.timezone('US/Eastern') t = pandas.Times
我是一名优秀的程序员,十分优秀!