SAS Base, A00-211 Crambible 

SAS 베이스 자격증 


QUESTION NO: 62


The following SAS program is submitted: 


data numrecords;
infile 'file specification';
input@1 patient $15.


relative $ 16-26@;
if relative = 'children' then input @54 diagnosis $15. @; 

else if relative = 'parents' then input @28 doctor $15.
clinic $ 44-53
@54 diagnosis $15. @;
input age;
run;


How many raw data records are read during each iteration of the DATA step execution?


A. 1 

B. 2 

C. 3 

D. 4


data step이 실행될때 raw 데이타가 몇번 읽혀지는지 묻는 문제입니다. 덤프에서 답이 B이지만, A가 답이라고 합니다. 


infile로 데이타를 불러와서 numrecords라는 새로운 데이타를 만들려고 합니다. input구문을 이용해서 patients라는 변수에다가 첫번째 값을 넣어주고, relative나는 변수에 16에서 26 자리를 넣어주고요. 


if 구문을 이용해서 만약 relative가 children일 경우, diagnosis라는 변수를 넣고, relative가 parent인 경우 doctor와 clinic변수를 넣습니다. 그리고 또 @ 이용해서 계속 데이타를 읽어서 age를 넣습니다. 


즉, @ 기능을 이용해서 데이터를 한번 읽어와서 이걸 여러 변수로 나눠 넣는다고 보면 되기때문에 데이타가 한번 읽혀진다고 합니다. 



Answer:  A


반응형

+ Recent posts