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

使用SAS EG计算各变量总时长占整体总时长的百分比

SAS EG计算各活动总耗时占整体总时长的百分比

嗨,我明白你要的是整体层面的占比而不是逐行计算,这就给你梳理两种在SAS EG里可行的方法,都是先算出所有活动的总时长,再计算每个活动总耗时的占比:

方法1:PROC SUMMARY + DATA 步分步计算

这种方法先通过PROC SUMMARY汇总各变量的总时长,再单独计算整体总时长和占比,逻辑清晰,适合变量较多的场景:

  1. 首先在SAS EG中新建一个代码节点,输入以下代码(替换成你的实际数据集名和变量名):
/* 第一步:计算每个耗时变量的总时长 */
proc summary data=你的数据集名 nway;
    var ZZZ_01 ZZZ_02 ZZZ_03 ...; /* 把截图里所有需要计算的耗时变量列在这里 */
    output out=total_sums sum=ZZZ_01_total ZZZ_02_total ZZZ_03_total ...;
run;

/* 第二步:计算整体总时长和各变量占比 */
data activity_percentages;
    set total_sums;
    /* 计算所有活动的总时长 */
    overall_total = sum(ZZZ_01_total, ZZZ_02_total, ZZZ_03_total, ...);
    /* 逐个计算每个活动的占比 */
    ZZZ_01_pct = (ZZZ_01_total / overall_total) * 100;
    ZZZ_02_pct = (ZZZ_02_total / overall_total) * 100;
    ZZZ_03_pct = (ZZZ_03_total / overall_total) * 100;
    ...
    /* 只保留需要的结果变量 */
    keep ZZZ_01_pct ZZZ_02_pct ZZZ_03_pct ... overall_total;
run;
  1. 运行代码后,activity_percentages数据集里就会包含你需要的各活动占比和整体总时长。

方法2:PROC SQL一步到位计算

如果你的变量数量不多,用PROC SQL可以一次性完成汇总和占比计算,更简洁:

proc sql;
    create table activity_percentages as
    select 
        sum(ZZZ_01) as ZZZ_01_total,
        sum(ZZZ_02) as ZZZ_02_total,
        sum(ZZZ_03) as ZZZ_03_total,
        ...,
        /* 计算整体总时长 */
        sum(ZZZ_01 + ZZZ_02 + ZZZ_03 + ...) as overall_total,
        /* 计算每个活动的占比 */
        (sum(ZZZ_01)/sum(ZZZ_01 + ZZZ_02 + ZZZ_03 + ...))*100 as ZZZ_01_pct,
        (sum(ZZZ_02)/sum(ZZZ_01 + ZZZ_02 + ZZZ_03 + ...))*100 as ZZZ_02_pct,
        (sum(ZZZ_03)/sum(ZZZ_01 + ZZZ_02 + ZZZ_03 + ...))*100 as ZZZ_03_pct,
        ...
    from 你的数据集名;
quit;

运行这段代码后,同样会生成包含占比结果的activity_percentages数据集。

小提示

  • 记得把代码里的你的数据集名替换成你实际使用的数据集名称
  • 变量名要和你截图里的一致(比如截图里的ZZZ_01、ZZZ_02等)
  • 如果担心除数为0的情况,可以加个判断,比如if overall_total > 0 then ZZZ_01_pct = (ZZZ_01_total / overall_total)*100; else ZZZ_01_pct = .;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 06:54:45