繁体   English   中英

和和+之间的差异?

[英]sas difference between sum and +?

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 / *是一个sum语句,表单是变量+表达式* /

这里 :

“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);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM