SAS

スポンサーリンク
tips(SAS)

データセットをExcelで出力する

SAS Studioで確認しました。PC版のSASでも動くはずです。やりたいことこのデータセットをエクセルで出力したい。ただしクリップボード経由の方法は用いない。このデータセットはSASHELP内にあったもの(CNTAINER)です。小さか...
SAS

グラフ入門(パラメータごとに分ける)

通常のデータ構造であれば1つのID(人物等)の身長や体重などのデータは同じ行の別の列に格納され(横持ち)、1つのIDにつき1レコードとなります。しかし設計によっては1つのIDで、身長で1レコード、体重で別に1レコードとなる構造(縦持ち)も当...
SAS

グラフ超超入門

SASをやっているとグラフを描かないといけない場面があります。社内にすでにあるプログラムはたいてい高度にカスタマイズされていて、グラフを描いたことがないとさっぱりわからないので超初歩を書いてみます。構文proc sgplot data = ...
tips(SAS)

SAS StudioでExcelデータを読み込む

SAS Studioでのみ動作確認できた方法です。クライアント版のSASで機能するか不明です。読み込む方法としては・libnameステートメント・importプロシジャ・DDE(Dynamic Data Exchange)が有名ですが、いず...
tips(SAS)

SAS StudioでExcelデータを扱う

自宅学習でお世話になることの多いSAS StudioではローカルPCにあるデータは直接触れません。(もしも方法があったら教えて下さい。)なので、ローカルPCで作成したファイルをSAS Studioの自分に割り当てられたフォルダにアップロード...
tips(SAS)

読み込むオブザベーション数を指定する

firstobsで最初に読み込むオブザベーションの行数を指定できます。obsで最後に読み込むオブザベーションの行数を指定できます。テストデータdata test_data; length NO 8.; set sashelp.class; ...
tips(SAS)

変数の並び替えをする

変数の並び(並び順、順番)を整える。formatステートメントを使います。元のデータproc print data = sashelp.class;run;並べ替えるdata class_change; format name age se...
関数

1つ前のレコードを取得する

LAG関数を利用します。構文LAG<n>(argument)必須引数argument:数値または文字の定数、変数、式のいずれかを指定します。オプション引数n:ラグ値の数を指定します。※「SAS 9.4 関数とCALLルーチンリファレンス」を...
SAS

公式リファレンス

ここにあります。たまに検索にひっかからなくなるのでメモ。SAS9.4
ステートメント

出力形式を設定する

formatステートメントを使います。構文format 変数名 型;変数名:1つまたは複数の変数に出力形式を関連付けます。型:変数の値を出力するときに適用する出力形式を指定します。(※SAS9.4ステートメントリファレンスより要約)例/* ...
tips(SAS)

マクロ変数の計算をする

※SAS 9.4 マクロ言語リファレンスより%eval整数演算を使用して、算術演算式や論理式を評価します。%sysevalf浮動小数点演算を使用して、算術演算式や論理式を評価します。整数の場合/* コード */%let a = 1;%let...
tips(SAS)

SEQ(シーケンス)番号を振る

構文(合計ステートメント)変数 + 式 ;変数:合計を格納したい変数。式:加算したい数。テストデータ総務省統計局で公開されている各国の人口推移(&予想)のデータより抜粋しました。もっと抜粋してもよかった。data raw_data; inp...
tips(SAS)

変数をまとめて欠損値にする

構文call missing(変数名1<,変数名2,…>);<>は省略可能の意味です。テストデータdata dummy1; input c1 $ n1 c2 $ n2 c3 $ n3; cards; aaa 1 bbb 2 ccc 3 aa...
SAS

format, informat

SASのformat(出力形式)とinformat(入力形式)は非常に数が多いので詳細はマニュアルへ(「SAS9.4出力形式と入力形式:リファレンス」など)。 その中で仕事で使いそうなものをまとめておく。日付関連format(出力形式)構文...
tips(SAS)

全オブザベーション(全行)に同じ値を追加する

自動変数を利用します。元のデータセットdata class; set sashelp.class;run;追加したい値が入ったデータセットdata add_ds; input add1 add2 $;cards;1 addvalue1;ru...
プロシジャ

SORTプロシジャ

概要:データセットをソートします。重複削除などでも使います。構文構文PROC SORT <collating-sequence-option> <other option(s)>; BY <DESCENDING> variable-1 <<...
ステートメント

do-untilステートメント

構文/* 条件が偽(false)のときに処理を繰り返す。 *//* 言い換えると *//* 条件が真(true)になるまで処理を繰り返す。 */do until(条件); 繰り返したい内容;end;例/* iが50より小さいとき(false...
ステートメント

do-whileステートメント

構文/* 条件が真(true)のときに処理を繰り返す。 */do while(条件); 繰り返したい内容;end;例/* iが5より小さいときに処理を繰り返す。 */data do_while; i = 0; do while(i < 5)...
ステートメント

do-endステートメント

構文1 -- to,byを利用do 繰り返し変数 = 開始値 to 終了値 by 増分; 繰り返したい内容;end;例1data do_end_1; do i = 2 to 10 by 2; result = 3 * i; output; ...
tips(SAS)

リスト入力によりデータを作成する

練習用に簡単なテストデータを作りたいときなどに。コードdata DummyData; input ID NAME $ SEX $ AGE HEIGHT WEIGHT;cards;1 Tanaka F 20 160.8 50.02 Sato ...
関数

文字列の結合

cat関数を利用。コード1/* 文字列の結合1 */ data ketsugo; char1 = "abc"; char2 = "def"; char3 = cat( char1, char2 ); run;結果1||を利用。(|はパイプま...
tips(SAS)

マクロ変数の内容をログに出力する

マクロ変数であれば%putステートメントを使ってログ出力することができる。コード%let aaa = xxx; %put &aaa.;ログ72 %let aaa = xxx; 73 %put &aaa.; xxx
スポンサーリンク