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

pandas DataFrame单类别计数实现:统计各职位收发邮件总数量

实现思路

我们需要分别统计每个职位作为发件方的总发送邮件量、作为收件方的总接收邮件量,再将两个维度的数值相加,就能得到每个职位的收发总邮件量。

具体代码实现

import pandas as pd

# 假设原始数据已经存为名为 df 的DataFrame
# 1. 统计各职位发件总数量
send_total = df.groupby('fromJobtitle')['e-mails'].sum()
# 2. 统计各职位收件总数量
receive_total = df.groupby('toJobtitle')['e-mails'].sum()
# 3. 合并收发数据并求和,缺失值补0
result = send_total.add(receive_total, fill_value=0).reset_index()
# 4. 重命名列名匹配需求
result.columns = ['totalJobtitle', 'e-mails']
# 可选:按邮件总数量降序排序
result = result.sort_values('e-mails', ascending=False, ignore_index=True)

注意事项

  • 对于自己发给自己的邮件(比如CEO发给CEO的记录),会同时计入该职位的发件量和收件量,符合「收发总数量」的统计逻辑。如果不需要重复计算,可以先过滤掉fromJobtitle == toJobtitle的记录再执行上述统计。
  • fill_value=0的作用是处理仅发过邮件未收过邮件、或仅收过邮件未发过邮件的职位,避免求和出现空值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 10:54:04