gpt4 book ai didi

SAS。变量是否在数据步骤的每次迭代中都设置为缺失?

转载 作者:行者123 更新时间:2023-12-04 14:30:34 27 4
gpt4 key购买 nike

我一直认为数据步骤的每次迭代都将变量设置为缺失。但是,在下面的代码中,它看起来像保留了最开始的变量获取的值。我不明白为什么会这样?

data one;
input x $ y;
datalines;
a 10
a 13
a 14
b 9
;
run;

data two;
input z;
datalines;
45
;
run;

data test;
if _n_ = 1 then set two; /* when _n_=2 the PDV assigns missing values, right ? */
set one;
run;
proc print;
run;

结果是
   z      x     y  
45 a 10
45 a 13
45 a 14
45 b 9

我期待得到这个
   z      x     y  
45 a 10
. a 13
. a 14
. b 9

最佳答案

SAS 做 不是 为 - SET、MERGE、MODIFY 或 UPDATE 语句重置 PDV 中的值。由于您使用的是 SET 语句,因此 SAS 不会重置它。

if _n_ = 1 then set two;

http://support.sas.com/documentation/cdl/en/lrcon/65287/HTML/default/viewer.htm#p08a4x7h9mkwqvn16jg3xqwfxful.htm

阅读 - 执行阶段 ——
指针 5

http://support.sas.com/documentation/cdl/en/basess/58133/HTML/default/viewer.htm#a001290590.htm

http://support.sas.com/documentation/cdl/en/lrcon/62955/HTML/default/viewer.htm#a000961108.htm

关于SAS。变量是否在数据步骤的每次迭代中都设置为缺失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27477387/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com