楼主: gotobest
14980 22

SAS do循环里的set语句用法请教 [推广有奖]

21
lyy1126664862 发表于 2017-1-3 18:43:08
pobel 发表于 2016-12-31 21:51
累加语句是指 类似 “x+1;” 这种语句。
不是包含sum()函数的语句。
原来是这样啊。谢谢哈,一直以来我都理解错了。还有一个问题想请教:为什么data4的结果是第一条和第三条 ?如果第二次data步结果覆盖第一次data步结果的话,结果不应该是第二条和第三条观测么?

22
pobel 在职认证  发表于 2017-1-4 16:36:52
lyy1126664862 发表于 2017-1-3 18:43
原来是这样啊。谢谢哈,一直以来我都理解错了。还有一个问题想请教:为什么data4的结果是第一条和第三条  ...
你需要了解data步在什么时候把记录输出到数据集中。
_n_=1时,do语句循环一次,只读第一条记录。之后输出;
_n_=2时,do语句循环两次,读取第二,三条记录。如果说覆盖的话,应该是第三条记录的值覆盖了第二条的值,输出的是第三条记录的值。

23
lyy1126664862 发表于 2017-1-6 10:41:14
lyy1126664862 发表于 2017-1-3 18:43
原来是这样啊。谢谢哈,一直以来我都理解错了。还有一个问题想请教:为什么data4的结果是第一条和第三条  ...
大神,我看了你关于PDV的总结,里面有一句“如变量来自RETAIN语句、SUM语句、或数据集中,则变量值会被retain;”  这是指sum()会被保存的意思么?我发现我又糊涂了,请大神赐教!

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

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