IF SAS SAS Base Programming WHERE

【SAS】計算で求められた変数に対するIFとWHEREの振舞いの違い【SAS Base Programming対策1】

投稿日:2021年12月20日 更新日:


/* where id3 */
data data1;
    id1=1111; id2=1111; id3=1111;
      output;
    id1=2222; id2=2222; id3=2222;
      output;
    id1=3333; id2=3333; id3=3333;
      output;
run;

data data2; set data1;
  id4=id3;
  where id3 ge 2222;
run;

  • whereステートメントによる暗黙的output

/* where id4 */
data data1;
    id1=1111; id2=1111; id3=1111;
      output;
    id1=2222; id2=2222; id3=2222;
      output;
    id1=3333; id2=3333; id3=3333;
      output;
run;

data data2; set data1;
  id4=id3;
  where id4 ge 2222;
run;

  • whereステートメントによる暗黙的output
  • whereステートメントの場合、data1に元々無かったid4は条件に使用できない。

/* if id3 */
data data1;
    id1=1111; id2=1111; id3=1111;
      output;
    id1=2222; id2=2222; id3=2222;
      output;
    id1=3333; id2=3333; id3=3333;
      output;
run;

data data2; set data1;
  id4=id3;
  if id3 ge 2222;
run;

  • ifステートメントによる暗黙的output

/* if id4 */
data data1;
    id1=1111; id2=1111; id3=1111;
      output;
    id1=2222; id2=2222; id3=2222;
      output;
    id1=3333; id2=3333; id3=3333;
      output;
run;

data data2; set data1;
  id4=id3;
  if id4 ge 2222;
run;

  • ifステートメントによる暗黙的output
  • ifステートメントの場合、data1に元々無かったid4も条件に使用できる。

-IF, SAS, SAS Base Programming, WHERE

執筆者:


comment

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

関連記事

【SAS】PATHNAME関数はライブラリのディレクトリパスを返す

今回はPATHNAME関数について解説します。 data data1; Id1 = pathname(“work”); run; pathnameによりライブラリworkのディレクトリパスを代入できる …

【SAS】DROPオプションの位置による処理の違い

今回はDROPオプションの付き方によって、結果が異なるケースを解説します。 (対比:KEEP 【SAS】KEEPはカラムの選択に使える。 | ビジネスイッチ (how-to-business.com) …

【SAS】OPTIONS NOMPRINT NOSOURCEはログに出力されるソースコードを非表示にできる。

今回はOPTIONS NOMPRINT NOSOURCEについて解説します。 /*nomprint nosource_1 */ options nomprint nosource; data data …

【SAS】UPCASE関数は文字列を大文字化する。

今回はUPCASE関数について解説します。 /* upcase */ data data1; Id1=1111; char1=”US”; char2=”aaa”; output; Id1=2222; …

【SAS】OUTPUTとDELETEの「明示的な使い方」「暗黙的な使い方」

今回はOUTPUTとDELETEにスポットを当てていきたいと思います。 /* output, delete無し */ data data1; Id1=1111; Char1=”AAAA”; outpu …