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

如何在SAS中将多行重复观测合并为单行且不丢失数据?

合并重复观测行以获取准确年末统计数据

当前错误输出

incorrect_output

期望正确输出

correct_output

解决方案(Python Pandas)

以下代码针对常见的重复观测场景,可实现合并行且不丢失数据:

场景1:同一主体多行数据,需合并为年末单行并聚合数值

假设你的数据包含主体ID、日期及各类数值字段,代码如下:

import pandas as pd

# 转换日期列为时间格式
df['日期'] = pd.to_datetime(df['日期'])

# 按主体分组,保留年末日期(最大日期),数值字段求和
result_df = df.groupby('主体ID').agg(
    主体名称=('主体名称', 'first'),  # 非数值字段取组内首个值(确保同主体字段一致)
    年末日期=('日期', 'max'),
    累计数值1=('数值1', 'sum'),
    累计数值2=('数值2', 'sum')
).reset_index()

# 输出结果
print(result_df)

场景2:完全重复的行,仅需去重保留最新/最早记录

如果是完全重复的观测行,仅需保留年末对应的记录:

import pandas as pd

df['日期'] = pd.to_datetime(df['日期'])
# 按主体ID去重,保留最后一条(年末)记录
result_df = df.drop_duplicates(subset=['主体ID'], keep='last')

注意事项

  • 请根据实际数据列名调整代码中的字段名称
  • 若需其他聚合规则(如均值、计数),可修改agg方法内的对应参数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 08:22:21