The following SAS program is submitted:
data work.passengers;
if OrigPassengers = then OrigPassengers= 100;
TransPassengers= 100;
OrigPassengers= .;
TotalPassengers= sum (OrigPassengers, TransPassengers) +0;
run;
What is the value of the TOTALPASSENGERS variable in the output data set?
A. 0
B. 100
C. 200
D. (missing numeric value)
답은 B입니다.
위 문제는 sum 함수와 더하기(+) 연산의 특성을 묻는 문제입니다.
sum(변수1, 변수2, ..., 변수n)은 변수 1개 빼고 모두 나머지 변수가 모두 결측값이라도 결측값을 제외한 합계를 반환합니다.
반면, 더하기 연산(변수1 + 변수2+ ... + 변수n)은 결측값이 1개라도 있을 경우 결측값을 반환합니다.
따라서 TOTALPASSENGERS는 SUM(100, .) 이므로 100이 됩니다.
만약 SUM(변수1 + 변수2)처럼 되어있다면 더하기 연산의 특성에 따라서 결측값으로 출력이 될 겁니다.