全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1446 4
2012-12-02
未命名.jpg

如上图,姚知勇书中代码。两个SET自动产生两个数据指针,姚书中说第二个SET并不是自动指向下一个观测的。为什么?请大神解答!谢谢不吝赐教!
二维码

扫码加我 拉你入群

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

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

全部回复
2012-12-3 08:34:04
对于单纯的SET语句(没有point=等选项),不管其是独立的一句,还是存在于do循环或if条件语句中,其执行机制都是一样的,那就是DATA步执行过程中每遇到一次,或者说SAS的执行路径每经过一次SET语句,该SET语句就去试图读取指定数据集的下一条记录。

这个例子中每一个DATA STEP LOOP中,SAS会从madrid中读取一条记录,从rates中可能读取0条,1条或多条记录(根据do while的条件)。
二维码

扫码加我 拉你入群

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

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

2012-12-3 09:24:36
pobel 发表于 2012-12-3 08:34
对于单纯的SET语句(没有point=等选项),不管其是独立的一句,还是存在于do循环或if条件语句中,其执行机制 ...
大神你好,我的问题是:是不是读取一个观测后,装入PDV,数据指针就自动跳到下一条观测?还是停留在原地,直到再次执行SET数据指针才跳到下一个读取观测?
二维码

扫码加我 拉你入群

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

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

2012-12-3 09:47:39
小甲克虫 发表于 2012-12-3 09:24
大神你好,我的问题是:是不是读取一个观测后,装入PDV,数据指针就自动跳到下一条观测?还是停留在原地, ...
我认为应该是在执行到SET语句时才会指到下一条观测。
二维码

扫码加我 拉你入群

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

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

2012-12-3 11:19:44
pobel 发表于 2012-12-3 09:47
我认为应该是在执行到SET语句时才会指到下一条观测。
大神的意思是,只有碰到SET,数据指针才会下移,没有碰到SET,数据指针一直停留在原来的观测上吗?
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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