SAS Base, A00-211 Crambible
SAS 베이스 자격증
QUESTION NO: 64
After a SAS program is submitted, the following is written to the SAS log:
105 data january;
106 set allmonths(keep = product month num_sold cost);
107 if month = 'Jan' then output january;
108 sales = cost * num_sold;
109 keep = product sales;
ERROR 22-322: Syntax error, expecting one of the following:
!,
!!, &, *,**, +, -,/, <,< =, <>, =, >, ><, >=,
AND, EQ, GE, GT, IN, LE, LT, MAX, MIN, NE, NG, NL,
NOTIN, OR,^=,|,II,
110 run;
What changes should be made to the KEEP statement to correct the errors in the LOG?
A. keep product sales;
B. keep product, sales;
C. keep = product, sales;
D. keep = (product sales);
SAS log 파일을 보여주고 있고요. 105번째 줄부터 110번째 줄까지 나와있네요. 이 에러는 109번째 줄에서 생기게 되었겠네요. 109번째를 보니 keep이라는 명령어로 product와 sales라는 변수를 유지시켜주려고 했네요.
data step에서의 keep 문구는 = 이 필요없이 keep 변수; 이렇게 적어주면 됩니다. 참고로, set을 이용해서 set allmonths(keep = product month num_sold cost); 처럼 allmonths데이타안에서의 product month num_sold cost변수를 유지시키라고 할땐 = 가 필요합니다.
Answer: A
'SAS > Base Programmer' 카테고리의 다른 글
[A00-211, Crambible] SAS Q66 - ODS, html (0) | 2017.05.30 |
---|---|
[A00-211, Crambible] SAS Q65 - cat, catx, !! (0) | 2017.05.30 |
[A00-211, Crambible] SAS Q63 - set by, first/last, pdv (0) | 2017.05.30 |
[A00-211, Crambible] SAS Q62 - @ (0) | 2017.05.30 |
[A00-211, Crambible] SAS Q61 - sort (0) | 2017.05.30 |