HOLIDAY 関数
指定した年の特定の祝日のSAS日付値を返します。
| 返されるデータの種類: | DOUBLE |
|---|
構文
引数
'holiday'
次のいずれかの値を指定する文字定数、変数または式です。BOXING、CANADA、CANADAOBSERVED、CHRISTMAS、COLUMBUS、EASTER、FATHERS、HALLOWEEN、LABOR、MLK、MEMORIAL、MOTHERS、NEWYEAR、THANKSGIVING、THANKSGIVINGCANADA、USINDEPENDENCE、USPRESIDENTS、VALENTINES、VETERANS、VETERANSUSG、VETERANSUSPS、VICTORIA。holidayの値には、大文字または小文字を使用できます。詳細については、SAS DS2 Language Referenceを参照してください。
次の表に記載されているいずれかの値を指定する文字定数、変数または式です。
holidayの値には、大文字または小文字を使用できます。
|
祝日の値 |
説明 |
祝日の日付 |
|---|---|---|
|
BOXING |
ボクシングデー |
12月26日 |
|
CANADA |
カナダ独立記念日 |
7月1日 |
|
CANADAOBSERVED |
カナダ独立記念日振替休日 |
7月1日または7月2 (7/1が日曜日の場合) |
|
CHRISTMAS |
クリスマス |
12月25日 |
|
COLUMBUS |
コロンブス記念日 |
10月の第2月曜日 |
|
EASTER |
復活の主日 |
毎年変わる |
|
FATHERS |
父の日 |
6月の第3日曜日 |
|
HALLOWEEN |
ハロウィーン |
10月31日 |
|
LABOR |
労働祭 |
9月の第1月曜日 |
|
MLK |
マーティンルーサーキング牧師の誕生日 |
1986以降の1月の第3月曜日 |
|
MEMORIAL |
メモリアルデー |
5月の最終月曜日(1971以降) |
|
MOTHERS |
母の日 |
5月の第2日曜日 |
|
NEWYEAR |
元日 |
1月1日 |
|
THANKSGIVING |
U.S. 感謝祭 |
11月の第4木曜日 |
|
THANKSGIVINGCANADA |
カナダ感謝祭 |
10月の第2月曜日 |
|
USINDEPENDENCE |
U.S. 独立記念日 |
7月4日 |
|
USPRESIDENTS |
大統領記念日の祝日 |
2月の第3月曜日(1971以降) |
|
VALENTINES |
バレンタインデー |
2月14日 |
|
VETERANS |
退役軍人の日 |
11月11日 |
|
VETERANSUSG |
退役軍人の日(米国政府の祝日) |
月曜日から金曜日までにスケジュールされる米国政府の祝日 |
|
VETERANSUSPS |
退役軍人の日(米国郵政公社の祝日) |
月曜日から日曜日までにスケジュールされる米国政府の祝日(米国郵政公社) |
|
VICTORIA |
ビクトリアデー |
5月24日以前の直近の月曜日 |
| データの種類 | CHAR |
|---|
year
4桁の年を指定する数値定数、変数または式です。2桁の年を使用する場合、YEARCUTOFF=システムオプションを指定する必要があります。
| データの種類 | DOUBLE |
|---|
詳細
HOLIDAY関数は、指定した年に発生する特定の祝日の日付を計算します。米国およびカナダの特定の一般的な祝日のみがこの関数で使用できるように定義されています。
多くの祝日の定義は時代とともに変わります。米国では、1971年2月11日に出された大統領命令11582で、多くの米国連邦休日の遵守を定着させました。
多くの休日はそれらが設立された日付が確立していますが、現在の祝日の定義は過去および将来に無限に拡張されます。一貫した定義がこれまでにされていない休日もあります。
HOLIDAY関数は、SAS日付値を返します。SAS日付値をカレンダー日付に変換するには、DATE9.形式などの有効なSAS日付形式を使用します。
例
次のステートメントは、HOLIDAY関数を示しています。
proc cas;
thanks = holiday('thanksgiving', 2021);
format thanks date9.;
print "thanks=" thanks;
boxing = holiday('boxing', 2021);
format boxing date9.;
print "boxing=" boxing;
easter = holiday('easter', 2021);
format easter date9.;
print "easter=" easter;
canada = holiday('canada', 2021);
format canada date9.;
print "canada=" canada;
fathers = holiday('fathers', 2021);
format fathers date9.;
print "fathers=" fathers;
valentines = holiday('valentines', 2021);
format valentines date9.;
print "valentines=" valentines;
victoria = holiday('victoria', 2021);
format victoria date9.;
print "victoria=" victoria;
run;
SASは次の結果をログに書き込みます。
thanks=25NOV2021 boxing=26DEC2021 easter=04APR2021 canada=01JUL2021 fathers=20JUN2021 valentines=14FEB2021 victoria=24MAY2021