SAS ^=(ノットイコール)

【SAS】^=(ノットイコール)

投稿日:2021年10月9日 更新日:

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


/* ^="" */
data data1;
  id="A"; chiku="SHINJUKU";
    output;
  id="B"; chiku="ICHIGAYA";
    output;
  id="C"; chiku="SHIBUYA";
    output;
  id="D"; chiku="";
    output;
run;


data null_jogai; set data1;
  if chiku ^= "";
run;
  • ノットイコールは^=
  • char型の欠損値は””

/* is not "" */
data data1;
  id="A"; chiku="SHINJUKU";
    output;
  id="B"; chiku="ICHIGAYA";
    output;
  id="C"; chiku="SHIBUYA";
    output;
  id="D"; chiku="";
    output;
run;


data null_jogai; set data1;
  if chiku is not "";
run;

  • ノットイコールは^=
  • char型の欠損値は””
  • SASで is not ~は使えない。

/* <> "" */
data data1;
  id="A"; chiku="SHINJUKU";
    output;
  id="B"; chiku="ICHIGAYA";
    output;
  id="C"; chiku="SHIBUYA";
    output;
  id="D"; chiku="";
    output;
run;


data null_jogai; set data1;
  if chiku <> "";
run;

  • ノットイコールは^=
  • char型の欠損値は””
  • <>は不適切。

/*^= .*/
data data1;
  id="A"; chiku=1111;
    output;
  id="B"; chiku=2222;
    output;
  id="C"; chiku=3333;
    output;
  id="D"; chiku=.;
    output;
run;


data null_jogai; set data1;
  if chiku ^= .;
run;
  • ノットイコールは^=
  • 数値型の欠損値は「.」

/* ^= NULL */
data data1;
  id="A"; chiku=1111;
    output;
  id="B"; chiku=2222;
    output;
  id="C"; chiku=3333;
    output;
  id="D"; chiku=.;
    output;
run;


data null_jogai; set data1;
  if chiku ^= NULL;
run;

  • ノットイコールは^=
  • 数値型の欠損値は「.」
  • 「NULL」を変数として認識している。
  • 「NULL」は中身を定義されていないため、中身は「.」

-SAS, ^=(ノットイコール)

執筆者:


comment

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

関連記事

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

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

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

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

【SAS】PUTは数値型を文字型に変換する

今回はPUTについて解説します。 /*数値8桁*/ data work.a; a = put(20061228, 8.); run; 数値型⇒文字型への変換はputを使う。数値型20061228⇒文字 …

【SAS】ORDER BY句無しで抽出した際の出力順【SQL】

この記事の要約:「ORDER BYを使わない場合、SQLで抽出した際の並び順は保証されない」 SQL文で抽出を行った際に、困ったことが起きました。 同じPG文なのに1回目と2回目で出力結果に違いがある …

【SAS】COMPRESS関数は文字列の空白を削除し、詰める。(COMPRESS関数 その1)

今回はCOMPRESS関数について解説します。 /* compress */ data data1; Id1=1111; Char1=”AA AA”; output; Id1=2222; Char1= …