Given the SAS data set PRICES: PRICES prodid price producttype sales returns
K12S 5.10 NETWORK 15 2
B132S 2.34 HARDWARE 300 10
R18KY 21.29 SOFTWARE 25 5
3KL8BY 6.37 HARDWARE 125 15
DY65DW 5.60 HARDWARE 45 5
DGTY23 4.55 HARDWARE 67 2
(데이터가 출력될 수 있게 문제를 조금 수정하였습니다)
The following SAS program is submitted:
data hware inter soft;
set prices (keep = producttype price);
if price le 5.00;
if producttype = 'HARDWARE' then output HWARE;
else if producttype = 'NETWORK' then output INTER;
else if producttype = 'SOFTWARE' then output SOFT;
run;
How many observations does the HWARE data set contain?
A. 0
B. 2
C. 3
D. 4
답은 B입니다.
HWARE 데이터셋은 몇 개의 관측치를 가지는 가를 묻는 문제입니다.
제일 처음 IF문을 통해 price가 5.00보다 작은 데이터들을 추출합니다.
B132S 2.34 HARDWARE 300 10
DGTY23 4.55 HARDWARE 67 2
총 2개입니다.
그 다음 producttype에 따라 HWARE, INTER, SOFT 데이터셋으로 각각 분류합니다.
HWARE 데이터셋은 producttype이 HARDWARE인 경우입니다.
처음 IF문에서 추출된 데이터 모두 HARDWARE이므로 HWARE는 총 2개의 데이터셋을 가집니다.
아래의 코드를 통해 확인해보시길 바랍니다.
data prices;
input prodid$ price producttype$ sales returns;
cards;
K12S 5.10 NETWORK 15 2
B132S 2.34 HARDWARE 300 10
R18KY 21.29 SOFTWARE 25 5
3KL8BY 6.37 HARDWARE 125 15
DY65DW 5.60 HARDWARE 45 5
DGTY23 4.55 HARDWARE 67 2
;
run;
data hware inter soft;
set prices (keep = producttype price);
if price le 5.00;
if producttype = 'HARDWARE' then output HWARE;
else if producttype = 'NETWORK' then output INTER;
else if producttype = 'SOFTWARE' then output SOFT;
run;
CF) 참고 연산자