【SAS Base】初学者向けチートシート(資格試験対策)
以下の点だけをとりあえず確実に押さえておけば、SAS Base Programmingを受験してもある程度は戦えるはずです。より詳細に学習したいときは、リンク先の記事を読むか問題を解いてみてください。 概ねSAS Base試験の参考書『SAS Certified Specialist Prep Guide(SAS 9.4)』に準拠しています。 ① DATAステップ data aaa; set sashelp.iris; if species = "Setosa" then type = 1; else type = 2; put "log:" species= type=; run; ② マージ ※データセットaa、bbは事前にソートされている必要あり。 data ●●; merge aa bb; by id; run; ③ データセットの概要を把握 proc contents data=sashelp.iris; run; ④ ファイルの取り込み proc import datafile = 'C:\aa\bb.csv' dbms = csv out = ●● replace; delimiter = ','; getnames = 'YES'; run; ※詳細はこちら。 【SAS Base】PROC IMPORTの注意点⇨https://mojimojimm.hatenablog.com/entry/2025/07/16/215843 ⑤ データセットを出力 options firstobs=1 obs=10; proc print data=●●; id num name; var salary phonenum; label salary = 's'; label phonenum = 'pn'; where salary > 3000; run; ※下記コードは事前にjobでソートしておく必要あり。 title '●●●'; footnote '●●●'; proc print data=●●; var salary phonenum; sum salary; by job; id job; pageby job; run; ⑥ SORTプロシジャ proc sort data=●●; by descending aa bb; run; ※詳細はこちら。
【SAS Base】PROC SORTの問題集(降順、昇順、欠損値の扱いについて)
⇨https://mojimojimm.hatenablog.com/entry/2025/07/16/220333
⑦ MEANSプロシジャ ※データセットは事前にccでソートされている必要あり。 proc means data=●● maxdec=2; var aa bb; by cc; run; ⑧ FREQプロシジャ proc freq data=●● / list nocum; tables AAA*BBB; ※詳細はこちら。
【SAS Base】PROC FREQの注意点(NLEVELS、ORDERなど)
⇨https://mojimojimm.hatenablog.com/entry/2025/07/17/215138
⑨ TRANSPOSEプロシジャ proc transpose data=●● out=●●; var aa bb cc; id num; by date; run; ⑩ FORMATプロシジャ proc format; value aaa 1 = "xxx" 2 = "yyy"; value bbb 1 -< 50 = 'zzz' 50 -< 100 = 'sss'; value $ccc "A" = "ttt" "B" = "uuu"; run; data ●●; set ●●; format abc aaa. def bbb. ghi $ccc.; run; ⑪ FIRST、LASTの使用 data ●●; set ●●; by id; retain count; if first.id then count = 0; count + 1; if last.id then output; run; ⑫ libnameステートメント libname cert 'C:\aa\bb\cc\'; data cert.aaa; set ●●; if _n_= 5 then output; run; ⑬ マクロ変数とDO LOOP %let a=count; data loop_example; do x = 1 to 5; put "&a is " x; output; end; run; ※詳細はこちら。
【SAS Base】DO WHILEとDO UNTILの違い、その応用
⇨https://mojimojimm.hatenablog.com/entry/2025/07/17/205802
⑭ 出力について ods html file='C:\aa\bb\cc.html'; proc print data=●●; run; ods html close; ods html path="%sysfunc(pathname(work)); ⑮その他出題されるであろうSAS関数 ※詳細はこちら。
【SAS Base】SAS日付の扱いについての問題集(MDY関数、INTCK関数、INTNX関数)
⇨https://mojimojimm.hatenablog.com/entry/2025/07/17/211100
【SAS Base】SASにおけるSCAN関数、SBSTR関数の問題集(SAS Base Programming準拠)
⇨https://mojimojimm.hatenablog.com/entry/2025/07/18/065218
【SAS Base】CATX、COMPBL、COMPRESS関数の問題集
⇨https://mojimojimm.hatenablog.com/entry/2025/07/18/194359
【SAS Base】CEIL、FLOOR、INT、ROUND関数の問題集
⇨https://mojimojimm.hatenablog.com/entry/2025/07/18/194733
これらのステートメント、プロシジャを引数まで完璧に説明できるようになれば、SAS Baseには合格できるレベルにあると思います。 皆さまの幸運をお祈りいたします! 以上。