*****************************;
* 엑셀의 sumproduct 함수 처리;
*****************************;
data back1;
input var1 var2;
cards;
3 4
8 6
1 9
;
data back2;
input var3 var4;
cards;
2 7
6 7
5 3
;
* 직접 계산;
data sumproduct_1;
merge back1(in=a1) back2(in=b1);
var5 = sum(var1*var3, var2*var4);
var6+var5;
run;
* 배열을 활용하여 처리;
data sumproduct_2;
merge back1(in=a) back2(in=b);
array avars[2] var1-var2;
array bvars[2] var3-var4;
do _t = 1 to dim(avars);
var5 = sum(var5,avars[_t]*bvars[_t]);
end;
var6+var5;
run;
* 단일 가중치를 부여하여 가중합 계산하기(var1변수에 var2 가중치 부여후 Sum);
DATA back3;
input var1 var2;
cards;
3 4
8 6
1 9
;
* sumwgt = sum(4,6,9);
* sum = sum(var1*var2);
proc univariate data=back3;
var var1;
weight var2;
output out=back4 sum=sum sumwgt=sumwgt;
run;
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.