如何解决“if first.col3”是什么意思? Sas企业指南
“if first.col3”是什么意思? (Sas 企业指南)
Data table2;
set table1;
by col1 col2;
if first.col3;
run;
在“if first.col3”之后没有语句
解决方法
first.<variable-name>
是特殊变量,当变量名列在 1
语句中时,它被设置为 BY
的值,并且该值来自新组的第一行由变量组成,变量从属于变量。
对于 first.<variable-name>
的用例,并且变量名未列在 BY
语句中,您将得到一条日志行说明
NOTE: first.<variable-name> is uninitialized.
未初始化的变量在 DATA 步开始时被赋予一个缺失值。
不带 if <expression>
的 then
语句被称为 subsetting-if,只有当表达式为真时,程序控制才会继续超出它。
如果您的情况,那么 if first.col3
的表达式永远不会为真,因为 col3
未列在 BY
语句中,因此控制从未超出子集 if
。
没有明确编码的 OUTPUT
语句的 DATA 步默认会在控制到达步的末尾时输出一行。
在您的情况下,控制永远不会到达步骤的末尾,因此永远不会发生 OUTPUT 并且结果数据集 table2
将具有零行。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。