INPUT SAS

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

投稿日:2022年1月5日 更新日:

今回はINPUT関数を使って日付表記をSAS日付に変換する方法について解説します。 


/* "2022/01/04" */
data data1;
  a = "2022/01/04";
  b = input(a, yymmdd10.);
run;

  • 文字型⇒数値型
  • 文字型”2022/01/04″⇒数値型22649になっている。
  • 文字型⇒数値型の動き+日付形式⇒SAS日付に表記変換する動き

/* today() */
data data1;
  a = today();
  b = input(a, yymmdd10.);
run;

  • 数値型⇒数値型
  • 数値型22649⇒数値型nullになっている。

/* 22649 */
data data1;
  a = 22649;
  b = input(a, yymmdd10.);
run;

  • 数値型⇒数値型
  • 数値型22649⇒数値型nullになっている。

/* 22649 */
data data1;
  a = "22649";
  b = input(a, yymmdd10.);
run;

  • 文字型⇒数値型
  • 文字型”22649″⇒数値型nullになっている。
  • 第一引数が文字型でもyymmdd10形式でなければnullになってしまう。

/* 2022/01/04 */
data data1;
  a = 2022/01/04;
  b = input(a, yymmdd10.);
run;

  • 数値型⇒数値型
  • 数値型505.5⇒数値型nullになっている。
  • 2022/01/04を数値で入れようとしても、計算式として認識されてしまう。
  • 2022/01/04を入れても、日付形式に変換されない。

-INPUT, SAS

執筆者:


comment

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

関連記事

【SAS】CALL SYMPUTは関数を用いてマクロ変数の代入ができる。

今回はCALL SYMPUTについて解説します。 /*その1*/ data data1; kyo = today(); run; today()は本日の日付をSAS日付で取得する。 /*その2*/ d …

【SAS】LIBNAMEはディレクトリパスをライブラリに割り当てる

今回はLIBNAMEについて解説します。 ちなみにSAS Base Programmingでは、LIBNAMEができないと前半の記述問題が解けません。(データセットが与えられるので、割り当てられないと …

【SAS】TIME関数はSAS時間値を取得する。

今回はTIME関数について解説します。 /* time_1 */ data data1; Id1 = time(); run; time()により、SAS時間値を取得する。 /* time_2 */ …

【SAS】%PUTステートメントは文字列をログに出力する。その1

今回は%PUTについて解説します。 /* %put */ %put CHAR; %putにより、文字列をログに出力できる。 /* %let */ %let CHAR = aaaa ; %put &am …

【SAS】計算で求められた変数に対するIFとWHEREの振舞いの違い【SAS Base Programming対策1】

/* where id3 */ data data1; id1=1111; id2=1111; id3=1111; output; id1=2222; id2=2222; id3=2222; outp …