Sas: 数値変数を日付に変換する方法


SAS では、次の基本構文を使用して数値変数を日付変数に変換できます。

 date_var = input ( put (numeric_var, 8 .), MMDDYY10. );
date_var format MMDDYY10. ;

次の例は、この関数を実際に使用する方法を示しています。

関連: SAS で数値変数を文字に変換する方法

例: SAS で数値変数を日付に変換する

SAS に、店舗によるさまざまな日の総売上高を示す次のデータセットがあるとします。

 /*create dataset*/
data original_data;
    input day sales;
    datalines ;
01012022 15
01022022 19
01052022 22
01142022 11
01152022 26
01212022 28
;
run ;

/*view dataset*/
proc print data = original_data;

プロシージャの内容を使用して、データセット内の各変数のデータ型を表示できます。

 /*display data type for each variable*/
proc contents data =original_data;

その売上はどちらも数値変数であることがわかります。

次のコードを使用して、変数を数値から日付に変換する新しいデータセットを作成できます。

 /*create new dataset where 'day' is date*/
data new_data;
    set original_data;
    date_day = input ( put (day, 8. ), MMDDYY10.) ;
    date_day format MMDDYY10. ;
    drop day;
run ;

/*view new dataset*/
proc print data = new_data; 

: データセットから元の日変数を削除するには、 drop関数を使用しました。

作成した新しい変数date_dayが日付形式であることがわかります。

MMDDYY10に注意してください。は、使用できる日付形式の 1 つにすぎません。 SAS 日付形式の完全なリストは、ここで見つけることができます。

追加リソース

次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。

SAS: 文字変数を日付に変換する方法
SAS: 文字変数を数値に変換する方法
SAS: 文字列を大文字、小文字、および適切な文字に変換する

コメントを追加する

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