INPUT SAS

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

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

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


/*8桁*/
data work.a;
  a = input("20061228", 8.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”20061228″⇒数値型20061228になっている。
  • 8.で8桁入っている。

/*9桁*/
data work.a;
  a = input("200612288", 8.);
run;
  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”200612288″⇒数値型20061228になっている。
  • 8.で8桁入っている。
  • 8桁しか入らないため、最後の8は落ちている。

/*7桁*/
data work.a;
  a = input("2006122", 8.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”2006122″⇒数値型2006122になっている。
  • 8.で8桁入っている。

/*数値8桁*/
data work.a;
  a = input(20061228, 8.);
run;
  • 文字型⇒数値型への変換はinputを使う。
  • 数値型20061228⇒数値型2006になっている(?)
  • inputは元々が数値型の場合には対応していない。

/*数値16桁*/
data work.a;
  a = input(2006122820061228, 8.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 数値型2006122820061228⇒数値型2.006122になっている(?)
  • inputは元々が数値型の場合には対応していない。

/*数値に変換できない1*/
data work.a;
  a = input("b", 8.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”b”⇒数値型NULLになっている。
  • 数値に変換できない文字列の場合は中身がNULLになる。

/*数値に変換できない2*/
data work.a;
  a = input("あいうえお", 8.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”あいうえお”⇒数値型NULLになっている。
  • 数値に変換できない文字列の場合は中身がNULLになる。

/*数値+日本語*/
data work.a;
  a = input("123あいうえお", 8.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”123あいうえお”⇒数値型NULLになっている。
  • 一部でも数値に変換できない文字列がある場合には中身はNULLになる。

/*007*/
data work.a;
  a = input("007", 8.);
run;
  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”007″⇒数値型7になっている。
  • 数値で007にできないため、7になる。

/*変数に数値*/
data work.a;
  b = "007";
  c = input(b, 8.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”007″⇒数値型7になっている。
  • 数値で007にできないため、7になる。
  • inputには変数bを設定できる。

/*best.8桁*/
data work.a;
  a = input("20061228", best.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”20061228″⇒数値型20061228になっている。
  • best.により最適化され、8桁入っている。

/*best.9桁*/
data work.a;
  a = input("200612288", best.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”200612288″⇒数値型200612288になっている。
  • best.により最適化され、9桁入っている。

/*best.7桁*/
data work.a;
  a = input("2006122", best.);
run;

  • 文字型⇒数値型への変換はinputを使う。
  • 文字型”2006122″⇒数値型2006122になっている。
  • best.により最適化され、7桁入っている。

-INPUT, SAS

執筆者:


comment

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

関連記事

【SAS】%MACROはマクロを定義することができる。その5 =を使うと数を渡す引数,数を受け取る引数を指定できる。【%MEND】

今回はマクロ引数に「=」を用いる方法について解説していきたいと思います。(事前に読んでおきたい記事:【SAS】%MACROはマクロを定義することができる。その3 マクロには引数を設定できる。【%MEN …

【SAS】&SYSUSERID.はログインIDを取得する自動マクロ変数

今回は&SYSUSERID.について解説します。 /* &sysuserid. */ %put &sysuserid.; &sysuserid.はログインIDを自動マク …

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

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

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

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

【SAS】YYYY-MM表記にする方法【SUBSTR】【||】

今回はYYYYMMDD表記の年月日をYYYY-MM表記にしたいと思います。 結論:SUBSTRと||を使います。 (SUBSTR:【SAS】SUBSTR関数は文字列から指定した文字数分切り取る。 | …