サンプル問題
以下の問題はSASグローバル認定プログラムの認定試験で使用される問題形式の一例です。
注意:これらの問題は認定試験のすべての形式を表しているわけではありません。以下の問題は試験の準備度合をチェックするためのものではありません。
SAS Base Programming for SAS®9
問題1
以下のプログラムをサブミットします。data test; input name $ age; cards; John +35 ; run;出力データセットにはどの値が格納されますか。
name age --------------------- John 35
-
name age --------------------- John (欠損値)
-
name age --------------------- (欠損値) (欠損値)
- データエラーのためDATAステップの実行に失敗する
問題2
SASデータセットEMPLOYEESには以下のオブザベーションがあります。LNAME FNAME JOBCODE --------------------------------- Whitley Sam na1
以下のDATAステップをサブミットすると、このオブザベーションに対する出力SASデータセットの変数JOBDESCの値はどれになりますか。
data navigate; set employees; if jobcode = 'NA1' then jobdesc = 'Navigator'; run;
- navigator
- Navigator
- NAVIGATOR
- 欠損値
問題3
以下のSASプログラムをサブミットします。proc format; value score 1 - 50 = 'Fail' 51 - 100 = 'Pass'; run;出力形式の適切な指定は、以下のどのPRINTプロシジャですか。
proc print data = sasuser.class; var test; format test score; run;
proc print data = sasuser.class; var test; format test score.; run;
proc print data = sasuser.class format = score; var test; run;
proc print data = sasuser.class format = score.; var test; run;
問題4
以下のDATAステップがあります。data loop; x = 0; do index = 1 to 5 by 2; x = index ; end; run;
実行後の、データセットLOOPの変数XとINDEXの値はどれになりますか。
- x = 3, index = 3
- x = 3, index = 4
- x = 5, index = 5
- x = 5, index = 6
- x = 5, index = 7
問題5
データセットONEには10オブザベーションが、データセットTWOには10オブザベーションが格納されています。以下のDATAステップで作成されるデータセットCOMBINEは何オブザベーションですか。data combine; set one two; run;
- 10
- 20
- 0(構文エラーのためDATAステップは失敗する)
- 10から20の間(マッチするオブザベーション数による)
SAS Advanced Programming for SAS®9
問題1
以下のSASデータセットONEとTWOがあります。以下のSASプログラムをサブミットします。
proc sql; select one.*, sales from one right join two on one.year = two.year; quit;以下のどのレポートが生成されますか。
問題2
以下のSASデータセットONEとTWOがあります。以下のSASプログラムをサブミットし、テーブルTRHEEを生成します。
data three; merge one (in = in1) two (in = in2); by num; run;
同じ内容のSASデータセットTRHEEを作成するSQLプログラムはどれですか。
proc sql; create table three as select * from one full join two where one.num = two.num; quit;
proc sql; create table three as select coalesce(one.num, two.num) as NUM, char1, char2 from one full join two where one.num = two.num; quit;
proc sql; create table three as select one.num, char1, char2 from one full join two on one.num = two.num; quit;
proc sql; create table three as select coalesce(one.num, two.num) as NUM, char1, char2 from one full join two on one.num = two.num; quit;
問題3
以下のSASプログラムをサブミットします。%let type = RANCH; proc sql; create view houses as select * from sasuser.houses where style = "&type"; quit; %let type = CONDO; proc print data = houses; run;作成されるレポートでは、STYLEの値が"RANCH"であるオブザベーションが表示されます。
以下のどの機能を使えば、WHERE句で現在のマクロ変数TYPEの値を展開しますか。
- GET
- SYMGET
- %SYMGET
- &RETRIEVE
問題4
SASデータセットSASDATA.SALESには変数DATEに対する単一インデックスと、インデックス化されていない変数REVENUEがあります。インデックスDATEが使用されるのはどのSASプログラムですか。
proc print data = sasdata.sales; by date; run;
proc print data = sasdata.sales; where month(date) = 3; run;
data march; set sasdata.sales; if '01mar2002'd < date < '31mar2002'd; run;
data march; set sasdata.sales; where date < '31mar2002'd or revenue > 50000; run;