LIBNAME SAS

【SAS】LIBNAMEはディレクトリパスをライブラリに割り当てる

投稿日:2021年11月14日 更新日:

今回はLIBNAMEについて解説します。

ちなみにSAS Base Programmingでは、LIBNAMEができないと前半の記述問題が解けません。(データセットが与えられるので、割り当てられないとデータセットが見えないからです。)

SAS Base Programming 試験の流れを知りたい方は以下の記事を読んでください。


libname cert "/home/xxxxxxxxxx/cert/input";
  • libnameによって”/home/xxxxxxxxxx/cert/input”をcertライブラリに割り当てる。

libname cert "/home/xxxxxxxxxx/cert/input";

data cert.data1;
  id1=1111;
run;

  • libnameによって”/home/xxxxxxxxxx/cert/input”をcertライブラリに割り当てる。
  • cert.data1として出力できる。

libname cert "/home/xxxxxxxxxx/cert/input";

data data2; set cert.data1;
run;

  • libnameによって”/home/xxxxxxxxxx/cert/input”をcertライブラリに割り当てる。
  • cert.data1として入力データセットとしている。

libname cert "/home/xxxxxxxxxx/cert/input";
libname cert clear;

  • libnameによって”/home/xxxxxxxxxx/cert/input”をcertライブラリに割り当てる。
  • clearによって割り当てたcertを解除できる。

libname cert "/home/xxxxxxxxxx/cert/input";

data cert.data1;
  id1=1111;
run;

data data2; set cert.data1;
run;

libname cert clear;

data data3; set cert.data1;
run;

  • libnameによって”/home/xxxxxxxxxx/cert/input”をcertライブラリに割り当てる。
  • 割り当てている間は、cert.data1として出力できる。
  • 割り当てている間は、cert.data1として入力データセットとしている。
  • clearによって割り当てたcertを解除できる。
  • 割り当てを解除すると、cert.data1として入力データセットにできない。

%let library = cert;
libname cert "/home/xxxxxxxxxx/cert/input";

data  &library..data1;
  id1=1111;
run;

  • libnameによって”/home/xxxxxxxxxx/cert/input”をcertライブラリに割り当てる。
  • 割り当てている間は、cert.data1として出力できる。
  • ライブラリ名をマクロ変数にしても展開できる。

-LIBNAME, SAS

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

【SAS】SASで良く使うテクニック。その8 「=」~修正前後のプログラムを比較したい時~【Excel】【VBA】

今回はSASで良く使うテクニックということで、修正前後のプログラムを比較したい時は、「=」が役に立つ理由を解説していきます。(このテクニックはコーディングなら、SASに限らず、VBAでも他のどの言語で …

【SAS】IFステートメントは処理を分岐できる。その4~THEN DO, ELSE DO~【END】

今回はIF文の分岐で、複数の命令を実行する方法について、解説していきます。 【併せて読みたい記事】 【SAS】IFステートメントは処理を分岐できる。その1 | ビジネスイッチ (how-to-busi …

【SAS】0による除算【SAS Base Programming対策3】

今回は0による除算(割り算)を解説します。 数学では「0で割れない」とか、極限の単元だと「∞に発散する」とか言われますが、SASで0による除算を行うとどうなるのか触れていきます。 知ってるか知らないか …

【SAS】ROUNDは四捨五入して数値を丸める

今回はROUNDについて解説します。 /* 正常形 */ data work.data1; _100 = round(1234.56789, 100); _10 = round(1234.56789, …

【SAS】TODAY()とDATE()はどちらもSAS日付値を取得する。

以下の2記事でtoday()を使ってきました。 【SAS】PUT+DATE,YYMMDDはSAS日付値をフォーマットを変換して表示する 【SAS】YYMMDDの可能性を考える(表示できる日付形式はどこ …