楼主: zljwanzi25
918 1

一段程序,求讲解 [推广有奖]

  • 0关注
  • 1粉丝

已卖:68份资源

博士生

52%

还不是VIP/贵宾

-

威望
0
论坛币
1775 个
通用积分
0
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
763 点
帖子
180
精华
0
在线时间
327 小时
注册时间
2006-11-22
最后登录
2021-12-6

楼主
zljwanzi25 发表于 2012-9-21 14:51:24 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
以下是一段程序,请问各位SAS高手,以下这部分程序起到了什么作用?看不懂呢
if _n_=1 then count=0;count+y;



返回一个星期内的相对应的值的总和;数据如下:
20100101 34
20100102 37
20100103 67
20100104 67
20100105 67
20100106 67
20100107 67
20100108 67
20100109 67
20100110 67
20100111 67
20100112 67
20100113 67
20100114 67
20100115 67
20100116 67
20100117 67
20100118 67
代码:
data a;
input x y;
informat x yymmdd10.;
format x yymmdd10.;
xx=weekday(x);
cards;
20100101 34
20100102 37
20100103 67
20100104 67
20100105 67
20100106 67
20100107 67
20100108 67
20100109 67
20100110 67
20100111 67
20100112 37
20100113 67
20100114 67
20100115 67
20100116 67
20100117 67
20100118 67
;
data b;
set a end=last;
if _n_=1 then count=0;
count+y;
if xx=1 then do;
   count=0;
count+y;
end;
if xx=7 or last then output;
run;

返回结果:
                            Obs             x     y    xx    count

                             1     2010-01-02    37     7      71
                             2     2010-01-09    67     7     469
                             3     2010-01-16    67     7     439
                             4     2010-01-18    67     2     134



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:informat informa weekday format output 程序 count

沙发
287816895 发表于 2012-9-21 15:42:58
if _n_=1 then count=0;这个是清空count变量的初始值,
count+y;y的累加变量
你分段运行下就明白了嘛

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-24 16:58