Sas で intnx 関数を使用する方法 (例付き)
SAS のINTNX関数を使用すると、日、週、月などの特定の間隔で日付を増分できます。
この関数は次の基本構文を使用します。
INTNX (間隔、開始日、増分)
金:
- 間隔: 日付に追加する間隔 (日、週、月、年など)
- start_date : 開始日を含む変数
- increment : 追加する間隔の数
間隔を減算するには、 increment引数に負の数値を指定します。
次の例は、SAS の次のデータセットを使用してINTNX関数を実際に使用する一般的な方法を示しています。
/*create dataset*/
data original_data;
date format date9.;
input date:date9. dirty;
datalines ;
01JAN2022 50
01FEB2022 34
14MAR2022 26
01MAY2022 22
24AUG2022 27
28OCT2022 48
14NOV2022 97
04DEC2022 88
;
run ;
/*view dataset*/
proc print data = original_data;
例 1: INTNX を使用してこの日に日数を追加します。
INTNX関数を使用して、日付列の各日付に 5 日を加算するplus5daysという新しい列を作成できます。
/*create new dataset with column that adds 5 days to date*/
data new_data;
set original_data;
plus5days= intnx ('day', date, 5);
format plus5days date9.;
run ;
/*view dataset*/
proc print data = new_data;
plus5daysという新しい列には、日付列の値に 5 日を加えた値が含まれていることに注意してください。
例 2: INTNX を使用して日付から日数を減算します。
INTNX関数で負の値を使用するだけで、日数を減算することもできます。
たとえば、次のコードを使用して、日付列の各値から 5 日を減算できます。
/*create new dataset with column that subtracts 5 days from date*/
data new_data;
set original_data;
minus5days= intnx ('day', date, -5);
format minusdays date9.;
run ;
/*view dataset*/
proc print data = new_data;
「minus5days」という新しい列には、日付列から 5 日を引いた値が含まれていることに注意してください。
例 3: INTNX を使用して月の最初の日を検索する
INTNX関数を使用して、日付列の各日付の月の最初の日を含むfirstmonthという新しい列を作成できます。
/*create new dataset with column that contains first day of the month*/
data new_data;
set original_data;
firstmonth = intnx ('month', date, 0);
format firstmonth date9.;
run ;
/*view dataset*/
proc print data =new_data;
firstmonthという新しい列には、日付列の各日付の月の最初の日が含まれることに注意してください。
例 4: INTNX を使用して年の最初の日を検索する
INTNX関数を使用して、日付列の各日付の年の最初の日を含むfirstyearという新しい列を作成することもできます。
/*create new dataset with column that contains first day of the year*/
data new_data;
set original_data;
firstyear = intnx ('year', date, 0);
format firstyear date9.;
run ;
/*view dataset*/
proc print data =new_data;
firstyearという新しい列には、日付列の各日付の年の最初の日が含まれていることに注意してください。
注: SAS INTNX関数の完全なドキュメントはここで見つけることができます。
追加リソース
次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。
SAS で DateTime を日付に変換する方法
SAS で数値変数を日付に変換する方法
SAS で 2 つの日付の差を計算する方法