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

Python中对Pandas DataFrame按机构求和并获取最新日期的实现方法

使用Pandas处理分组数据需求

首先加载示例数据并转换日期格式:

import pandas as pd

# 构建你提供的数据集
data = {
    'Organization': ['O4', 'O2', 'O1', 'O4', 'O2', 'O2'],
    'Total_Founding': [50, 70, 20, 80, 30, 60],
    'announced_on': ['2015-03-26', '2016-10-10', '2016-10-14', '2015-05-26', '2016-12-10', '2017-01-10']
}

df = pd.DataFrame(data)
# 将日期列转为datetime类型,方便后续日期计算
df['announced_on'] = pd.to_datetime(df['announced_on'])

需求1:替换每条记录的Total_Founding为组内总和

通过groupby结合transform方法,计算每个组织的Total_Founding总和,并将结果映射回原数据的每条记录:

# 按Organization分组,计算组内总和并替换原列
df['Total_Founding'] = df.groupby('Organization')['Total_Founding'].transform('sum')

# 查看处理结果
print("需求1处理结果:")
print(df)

处理后输出:

OrganizationTotal_Foundingannounced_on
O41302015-03-26
O21602016-10-10
O1202016-10-14
O41302015-05-26
O21602016-12-10
O21602017-01-10

需求2:获取每组最新日期+组总和

这里分两种常见场景实现:

场景A:生成每个组织的汇总结果(一行对应一个组织)

使用groupby的agg方法,一次性聚合计算总和和最新日期:

# 重新加载原始数据,避免被需求1的修改影响
df = pd.DataFrame(data)
df['announced_on'] = pd.to_datetime(df['announced_on'])

# 分组聚合,指定每个字段的计算逻辑
summary_df = df.groupby('Organization').agg(
    Total_Founding_Sum=('Total_Founding', 'sum'),
    Latest_Announced_Date=('announced_on', 'max')
).reset_index()

# 查看汇总结果
print("\n需求2场景A(组织汇总):")
print(summary_df)

输出:

OrganizationTotal_Founding_SumLatest_Announced_Date
O1202016-10-14
O21602017-01-10
O41302015-05-26

场景B:保留原记录结构,替换为组内总和+最新日期

同样用transform分别处理两个字段,保留原数据的行数:

# 重新加载原始数据
df = pd.DataFrame(data)
df['announced_on'] = pd.to_datetime(df['announced_on'])

# 替换Total_Founding为组总和
df['Total_Founding'] = df.groupby('Organization')['Total_Founding'].transform('sum')
# 替换announced_on为组内最新日期
df['announced_on'] = df.groupby('Organization')['announced_on'].transform('max')

# 查看处理结果
print("\n需求2场景B(保留原记录):")
print(df)

输出:

OrganizationTotal_Foundingannounced_on
O41302015-05-26
O21602017-01-10
O1202016-10-14
O41302015-05-26
O21602017-01-10
O21602017-01-10

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 06:12:37