我正尝试根据另一个包含时区的列将时区设置到datetime列。
示例数据:
DATETIME VALUE TIME_ZONE
0 2021-05-01 00:00:00 1.00 Europe/Athens
1 2021-05-01 00:00:00 2.13 Europe/London
2 2021-05-01 00:00:00 5.13 Europe/London
3 2021-05-01 01:00:00 4.25 Europe/Dublin
4 2021-05-01 01:00:00 4.25 Europe/Paris
我试图给DATETIME
列分配一个时区,但是使用tz_localize
方法时,我无法避免使用apply调用,这在我的大型数据集上会非常慢。有没有什么方法可以不使用apply来完成这个任务?
我现在拥有的(这是缓慢的):
df['DATETIME_WITH_TZ'] = df.apply(lambda row: row['DATETIME'].tz_localize(row['TIME_ZONE']), axis=1)
1条答案
按热度按时间5hcedyr01#
我不确定,但在您的情况下,listcomp 似乎比
apply
快17倍:另一个变体,使用
tz_convert
:时间:
输出: