data whatever;
infile '';
input price cost;
<statement>;
run;
在中,使用和 和有什么<statement>
区别?total = sum(total,cost)
total = total + cost
如果您在input
声明之后实际包含其中任何一个,您可能会遇到麻烦。
ProgramFOX 发布的信息是正确的,但是如果您要询问这三个语句之间的区别,则还有更多内容:
total = sum(total,cost);
total + cost;
其中第二个暗示了一个retain total;
声明,并且也将空值视为零。当您使用这种类型的表达式时,您会遇到 null 问题:
total = total + cost;
区别如下:
如果要计算累计总数,则应使用 sum 语句。
total = sum(total,cost) /* 它是一个求和函数 */
total+cost /* 求和语句,形式为变量+表达式 */
这里 :
“total”指定累加器变量的名称,其中包含一个数值。
1) 在 SAS 读取第一个观测值之前,变量(在这种情况下为总计)自动设置为 0。变量的值从一个迭代保留到下一个迭代,就好像它出现在 RETAIN 语句中一样。
2) 要将 sum 变量初始化为 0 以外的值,请将其包含在具有初始值的 RETAIN 语句中。
和
“成本”是一种表达方式
1) 计算表达式并将结果添加到累加器变量。
2) SAS 将产生缺失值的表达式视为零。
sum 语句与 sum 函数的不同之处在于 sum 语句保留了它之前计算的值。
但是,sum 语句等效于使用 SUM 函数和 RETAIN 语句,如下所示:
retain total 0;
total=sum(total,cost);