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】TRANSPOSEは縦持ち、横持ちを変換できる。その1

今回はTRANSPOSEについて解説します。 /* num char char */ data data1; NO=1111; CHAR=”A”; MOJI=”AAAA”; output; NO=22 …

【SAS】SAS Studioのフィルター機能の使い方を解説 その2 ~数値型~

今回もSAS Studioのフィルター機能について解説します。(前回:【SAS】SAS Studioのフィルター機能の使い方を解説 その1 ~文字型~ | ビジネスイッチ (how-to-busine …

【SAS】SAS日時値からSAS日付値に変換する方法【DATEPART】【DATETIME】【DATE】

今回はDATETIMEでSAS日時値を取得した後、SAS日付値に変換する方法について解説していきます。 (つまり、DATETIMEの値からDATEの値に変換する) (DATETIME:【SAS】DAT …

【SAS】LABELオプションは変数名ではなく、ラベル名を出力する。【PRINTプロシージャ】【SAS Base Programming対策2】

今回はLABELオプションについて解説します。 SAS Base Programmingの四択問題でも出されそうな感じです。 /* label */ data data1; attrib Id1 le …

【SAS】SETステートメントに複数データセットを設定すると縦結合できる

今回はSETについて解説します。 /* 1~7 */ data data1; Id1=1111; Char1=”AAAA”; output; Id1=2222; Char1=”BBBB”; outpu …