请选择 进入手机版 | 继续访问电脑版
楼主: 绣球
1009 4

[问答] 关于do循环的求助 [推广有奖]

  • 1关注
  • 0粉丝

高中生

95%

还不是VIP/贵宾

-

威望
0
论坛币
87 个
通用积分
0.3000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
273 点
帖子
15
精华
0
在线时间
57 小时
注册时间
2015-1-10
最后登录
2024-3-25

绣球 发表于 2017-8-12 13:19:05 |显示全部楼层 |坛友微信交流群

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
用do循环求得一数据集,却始终都会各组多一行,百思不得其解,贴上代码和结果,望大侠出手相助,不胜感激!!
code:
data timing;
format data yymmdd10. initialdate yymmdd10. sort best12.;
data='20aug2017'd;
initialdate='04jul2017'd;
sort=3+((data-initialdate)-33)/7;
call symput('data',data);
call symput('initialdate',initialdate);
call symput('sort',sort);
run;

data dt2;
format startdate yymmdd10. enddate yymmdd10. reviewstart yymmdd10. reviewend yymmdd10.;
startdate=&initialdate. -7;
do sort=1 to &sort.;
startdate+7;
enddate=startdate+6;
reviewstart=startdate+3;
   do reviwnum=1 to &sort. until ((&data.-reviewstart)=9);
      reviewstart+7;
          reviewend=reviewstart+6;
          output;
   end;
output;
end;
run;
问题是sort每组最后都会多一行重复值,如何解?
二维码

扫码加我 拉你入群

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

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

关键词:do循环 Initial Reviews Review EVIEWS

绣球 发表于 2017-8-12 14:27:01 |显示全部楼层 |坛友微信交流群
好像是output的缘故,修改了一下,用了一个笨办法,算是解决了,有更好的办法请留言哦

使用道具

mycpcw 发表于 2017-8-14 08:09:46 |显示全部楼层 |坛友微信交流群
.....
 output;
   end;
output;
end;
run;
改成:
.......
output;
   end;
end;
run;
因为“do......end”语句是封闭的其他语句要放在循环之内。

使用道具

hkhl237 发表于 2017-8-14 10:42:27 |显示全部楼层 |坛友微信交流群
把第二个output 去掉就好了

使用道具

去掉倒数第三行的output

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 07:25