全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1387 4
2010-08-02
data a;
       input name$ score;
cards;
li 91
chen 95
sun 88
;
run;

data b;
       if  _n_=1 then set a;
run;

数据集b的记录是:
name score
li 91
li 91

为何会是这样的结果啊?
能具体解释下这其中set的运行机理吗?疑惑.
谢谢!
二维码

扫码加我 拉你入群

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

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

全部回复
2010-8-2 12:46:01
data a;
       input name$ score;
cards;
li 91
chen 95
sun 88
;
run;

data b;
       if _n_=1 then set a;
           else stop;
run;
二维码

扫码加我 拉你入群

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

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

2010-8-2 12:48:29
谢谢,我只是想请教为何出现的是两条记录,而且都是a数据集的第一条记录.在sas里面是如何运行的?
二维码

扫码加我 拉你入群

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

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

2010-8-2 13:09:17
198  data b;
199     put _all_;
200     if _n_=1 then set a;
201     put _all_;
202     put "-------------";
203  run;

name=  score=. _ERROR_=0 _N_=1
name=li score=91 _ERROR_=0 _N_=1
-------------
name=li score=91 _ERROR_=0 _N_=2
name=li score=91 _ERROR_=0 _N_=2
-------------
NOTE: DATA STEP stopped due to looping.
NOTE: There were 1 observations read from the data set WORK.A.
NOTE: The data set WORK.B has 2 observations and 2 variables.
NOTE: DATA statement used (Total process time):
      real time           0.03 seconds
      cpu time            0.03 seconds

First loop: _N_=1, SAS 读取第一行, li  91; 并输出到b

Second loop: _N_=2, 此时PDV中name=li, score=91, 因为if 语句不满足,所以不再执行set动作,PDV中的值也就不会更新,之后输出到b;

由于没有要求SAS继续读取数据,此时SAS停止此data step。
二维码

扫码加我 拉你入群

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

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

2010-8-2 13:10:26
210  data b;
211     put _all_;
212     if _n_=1;
213     set a;
214     put _all_;
215     put "-------------";
216  run;

name=  score=. _ERROR_=0 _N_=1
name=li score=91 _ERROR_=0 _N_=1
-------------
name=li score=91 _ERROR_=0 _N_=2
NOTE: DATA STEP stopped due to looping.
NOTE: There were 1 observations read from the data set WORK.A.
NOTE: The data set WORK.B has 1 observations and 2 variables.
NOTE: DATA statement used (Total process time):
      real time           0.04 seconds
      cpu time            0.04 seconds

如果用if statement,就不会重复了。
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群