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はマクロを定義することができる。その4 引数違いの同名マクロは区別できない。【%MEND】

今回は引数違いの同名マクロについて解説していきたいと思います。(事前に読んでおきたい記事:【SAS】%MACROはマクロを定義することができる。その3 マクロには引数を設定できる。【%MEND】 | …

【SAS】LIKE演算子は部分一致を表現できる。【WHERE】

/* if ‘%aaaa%’ */ data data1; Id1=1111; Id2=”1aaaa”; Id3=1111; output; Id1=2222; Id2=”bbbb”; Id3=222 …

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

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

【SAS】KEEPはカラムの選択に使える。

今回はKEEPについて解説していきたいと思います。 DROPと対になる感じで、 DROPが指定したカラムを捨てるのに対し、KEEPは指定したカラムのみ残す動きを取ります。 (参考「DROP」:【SAS …

【SAS】「引用符で囲まれた文字列の後の識別子の意味は、将来のSASリリースで変わる可能性があります。」の対処法【NOTE】

今回は、 「引用符で囲まれた文字列の後の識別子の意味は、将来のSASリリースで変わる可能性があります。」 とログメッセージが出た時の対処法について解説します。 /* メッセージ_1 */ data d …