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】%SYSFUNC関数はデータステップの外でも関数を使えるようにする。その2(%LETステートメント中の挙動)

今回は%SYSFUNC関数について、%LETステートメント中の挙動に着目して解説します。 /* substr */ %let a = substr(123456789, 2, 4); data dat …

【SAS】_NULL_は出力しないデータセット文を作るのに便利。

今回は_NULL_について解説します。 実は前回の記事で使用していた文法です。 【SAS】CALL SYMPUTは関数を用いてマクロ変数の代入ができる。 単元は分けた方が良いと思ったので、別記事として …

【SAS】ODS PDFは結果内容をPDFファイルとして出力する

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

【SAS】INPUTは日付表記をSAS日付に変換できる

今回はINPUT関数を使って日付表記をSAS日付に変換する方法について解説します。  /* “2022/01/04” */ data data1; a = “2022/01/04”; b = …

【SAS】DROPで良く問われる文法【SAS Base Programming対策8】

今回もDROPについて解説します。 (対比:KEEP 【SAS】KEEPはカラムの選択に使える。 | ビジネスイッチ (how-to-business.com)) 過去記事ではDROPの使い方について …