You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Pandas计算不同时区下两个日期对应的行程时长

跨时区行程时长计算实现方案

实现逻辑很简单,只需要把原始的文本时间分别绑定对应的时区后再做差,最后转换为分钟单位即可,具体代码如下:

首先导入依赖(如果未导入的话):

import pandas as pd

你已经完成了数据读取:

trips = pd.read_csv("trips.csv", sep=',')

接下来做时间转换和时长计算:

# 逐行给出发时间绑定对应时区
trips['depart_dt'] = trips.apply(
    lambda row: pd.to_datetime(row['Depart Time']).tz_localize(row['Depart Timezone']),
    axis=1
)
# 逐行给抵达时间绑定对应时区
trips['arrive_dt'] = trips.apply(
    lambda row: pd.to_datetime(row['Arrive Time']).tz_localize(row['Arrive Timezone']),
    axis=1
)
# 计算时长,单位为分钟
trips['duration'] = (trips['arrive_dt'] - trips['depart_dt']).dt.total_seconds() / 60

# 可选:删除中间生成的临时列
trips.drop(['depart_dt', 'arrive_dt'], axis=1, inplace=True)

如果你需要取整数分钟,可以在计算duration的末尾加.astype(int)转换为整数类型。
注意:如果你的原始时间字符串本身已经自带时区标识,将上述代码中的tz_localize替换为tz_convert即可正常使用。

内容的提问来源于stack exchange,提问作者Joris Kinable

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 13:54:02