HOLIDAY 関数

指定した年の特定の祝日のSAS日付値を返します。

返されるデータの種類:DOUBLE

構文

HOLIDAY('holiday', year)

引数

'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
最終更新: 2026年9月18日