data test;
input A B C D$ E;
datalines;
. 70 . Mike 2
1 80 21 Tony 3
2 10 0 . 4
3 . 0 Lew .
3 9 4 . .
;
run;
data test2;
set test;
Total=A+B+C;
run;
data test3;
set test;
if A=. then A=0;
if B=. then B=0;
if C=. then C=0;
Total=A+B+C;
run;
我想对A B C列进行求和,但是它们缺少值,所以我必须首先将所有缺失替换为0(在test3中),这样我才能得到一个数字。有没有优雅的方法呢?我的方法看起来很尴尬。感谢帮助。
答案 0 :(得分:2)
使用您的功能,这样您就不必更换缺失的值。
SUM
函数应该这样做 - 通过下面显示的两种方法注意输出的差异。
data out;
set test;
sum_func = sum(A,B,C);
sum = A+B+C;
keep sum: A B C;
run;