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

使用Python循环计算谷歌员工跨公司对接的平均响应时间差

实现代码
import pandas as pd

# 初始化原始数据
data = {'timestamp': ['Friday, October 15, 2021 3:40 PM', 'Oct 15, 2021 03:06:29 PM', 'Friday, October 15, 2021 2:28 PM', 'Oct 15, 2021 06:23:51 AM', 'Oct 15, 2021 04:19:07 AM', 'Oct 15, 2021 08:19:07 AM'],
        'emailuser': ['michael@google.com', 'caron@yt.com', 'luke@yt.com', 'sav@google.com','sav@google.com', 'paul@yt.com']
        }
df = pd.DataFrame(data)

# 转换时间列为datetime格式,兼容两种不同的时间写法
df['timestamp'] = pd.to_datetime(df['timestamp'])

# 存储用户对应的时间,方便后续配对
user_time = {}
for _, row in df.iterrows():
    # 跳过caron的记录
    if row['emailuser'] == 'caron@yt.com':
        continue
    user_time[row['emailuser']] = row['timestamp']

valid_deltas = []
# 按规则配对计算
# 第一组:michael和luke
delta1 = user_time['michael@google.com'] - user_time['luke@yt.com']
if delta1.total_seconds() > 0:
    valid_deltas.append(delta1)
# 第二组:sav和paul
delta2 = user_time['sav@google.com'] - user_time['paul@yt.com']
if delta2.total_seconds() > 0:
    valid_deltas.append(delta2)

# 计算平均值
if valid_deltas:
    avg_response = sum(valid_deltas, pd.Timedelta(0)) / len(valid_deltas)
    print(f"谷歌员工平均响应时长为:{avg_response}")
    # 如需换算为分钟可使用以下代码
    # print(f"换算为分钟:{avg_response.total_seconds() / 60:.2f}分钟")
else:
    print("无有效响应时长记录")

运行上述代码得到的有效时间差只有michael和luke的0 days 01:12:00,所以平均响应时长就是1小时12分钟。

逻辑说明
  • 首先用pd.to_datetime自动识别两种不同格式的时间字符串,统一转换为可计算的时间类型
  • 循环遍历所有行,跳过caron的记录,把其他用户的时间存在字典里方便配对
  • 按题目要求的配对关系计算时间差,仅保留正的时间差,自动过滤sav和paul的无效配对
  • 最后对所有有效时间差求平均值即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 14:54:08