首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在SAS中完成这个求和

如何在SAS中完成这个求和
EN

Stack Overflow用户
提问于 2014-11-11 02:34:37
回答 2查看 38关注 0票数 0
代码语言:javascript
复制
id      qty  totalqty
0001    1    1
0002    2    2
0002    5    7
0003    7    7
0006    3    3
0006    4    7

id已经按顺序排序了。如果id与上面所示的相同,我想对qty进行求和。所以会有一个新的变量叫做极大号。下面是我的SAS代码。不知何故,有些行是对的,另一些是错的。

代码语言:javascript
复制
data new; set new;
    totalqty=qty;
        if id = lag1(id) then do;
            totalqty = lag1(totalqty)+qty;
        end;
run;

有人能帮我吗?非常感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-11 02:45:20

这个怎么样?

代码语言:javascript
复制
DATA WANT;
    SET HAVE;
    BY ID;
    IF FIRST.ID AND LAST.ID THEN TOTALQTY = QTY;
    ELSE IF FIRST.ID THEN TOTALQTY = QTY;
    ELSE TOTALQTY+QTY;
RUN;
票数 0
EN

Stack Overflow用户

发布于 2014-11-11 04:57:09

更简单一点,因为前两个条件是相同的。

数据需要;SET HAVE;BY ID;如果FIRST.ID,则TOTALQTY = QTY;否则TOTALQTY+QTY;运行;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26856530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档