SAS Base, A00-211 Crambible
SAS 베이스 자격증
QUESTION NO: 20
Given the SAS data set PRICES:
PRICES Prodid price producttype sales returns
K125 5.10 NETWORK 15 2
B132S 2.34 HARDWARE 300 10
R18KY2 1.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 cheap;
set prices(keep = productype price);
if producttype = 'HARDWARE' then output hware;
else if producttype = 'NETWORK' then output inter;
if price le 5.00; <- PDV에만 적용됩니다.
run;
How many observations does the HWARE data set contain?
A. 0
B. 2
C. 3
D. 4
PDV(Program Data Vector)는 데이타가 정리되는 과정이고요. 이 과정이 마치면 OUTPUT DATA로 물리적으로 완성된 데이타라고 생각하면 됩니다.
hware inter cheap 데이터를 만들려고 하는데요. 이때 productype price 변수만 가져오려고 합니다. 참고로 set으로 데이타를 불러오게되면, obervation이 line by line으로 불러오게 됩니다. 예를들어 set으로 price를 가져올때 6개의 observations이 하나씩 불러오게 된다는 뜻이예요.
첫번째 observation: K125 5.10 NETWORK 15 2
여기서 price 의 값 5.10을 불러옵니다. 그러면 PDV에서 세개의 데이타셋 안에 producttype과 price 값이 들어가게 됩니다.
if producttype = 'HARDWARE' then output hware; 에서, 첫번째 observation의 productype는 NETWORK이니까 이 문구는 무시하고요.
if producttype = 'NETWORK' then output inter; 이 문구가 해당되니까 inter라는 데이타셋에만 PDV상태에서 output상태로 내보내게 됩니다.
if price le 5.00; 에서는 해당되지 않으니까 PDV에서 값이 사라지게 됩니다. (이건 취소선으로 표시한거예요)
PDV OUTPUT
hware hware
productype price productype price
NETWORK 5.10
inter inter
productype price productype price
NETWORK 5.10 NETWORK 5.10
cheap cheap
productype price productype price
NETWORK 5.10
두번째 Observation: B132S 2.34 HARDWARE 300 10
아까 첫번째에서 값이 5.10이니까 PDV에서는 파일이 사라졌고요.
두번째 observation으로 왔습니다.
if producttype = 'HARDWARE' then output hware; 에서, 두번째 observation의 productype는 Hardware이니까 PDV에 다 들어가고, hware 아웃풋으로도 보내지게 되네요.
if producttype = 'NETWORK' then output inter; 이 문구는 해당되지 않죠.
if price le 5.00; 에서 해당되니까 PDV에서는 그대로 있는 상태가 됩니다.
PDV OUTPUT
hware hware
productype price productype price
Hardware 2.34 Hardware 2.34
inter inter
productype price productype price
Hardware 2.34 NETWORK 5.10
cheap cheap
productype price productype price
Hardware 2.34
세번째 Observation: R18KY2 1.29 SOFTWARE 25 5
if producttype = 'HARDWARE' then output hware; 해당사항 없습니다.
if producttype = 'NETWORK' then output inter; 해당사항 없습니다.
if price le 5.00; 해당사항 없습니다.
PDV OUTPUT
hware hware
productype price productype price
Hardware 2.34 Hardware 2.34
inter inter
productype price productype price
Hardware 2.34 NETWORK 5.10
cheap cheap
productype price productype price
Hardware 2.34
이렇게 observation 6까지 진행하게되면~ 이런 결과가 됩니다.
PDV OUTPUT
hware hware
productype price productype price
Hardware 2.34 Hardware 2.34
Hardware 4.55 Hardware 6.37
Hardware 5.6
Hardware 4.55
inter inter
productype price productype price
Hardware 2.34 NETWORK 5.10
Hardware 4.55
cheap cheap
productype price productype price
Hardware 2.34
Hardware 4.55
Answer: D
'SAS > Base Programmer' 카테고리의 다른 글
[A00-211, Crambible] SAS Q22 - the syntax error (0) | 2017.05.25 |
---|---|
[A00-211, Crambible] SAS Q21 - do / while (비슷한문제 12번 참고) (0) | 2017.05.24 |
[A00-211, Crambible] SAS Q19 - sum (a+b) (0) | 2017.05.24 |
[A00-211, Crambible] SAS Q18 - var / sum (0) | 2017.05.24 |
[A00-211, Crambible] SAS Q17 (0) | 2017.05.24 |