前のページ|次のページ

WEEK関数

週番号の値を返します。

カテゴリ: 日付と時間

構文

オプション引数

sas-date

SAS日付値を指定します。sas-date引数を指定しない場合、WEEK関数は現在の日付の週番号の値を返します。

descriptor

ディスクリプタの値を指定します。次のディスクリプタを大文字または小文字で指定できます。

U

1年のうちの週番号を指定します。日曜日が週の第1日とみなされます。週番号値は、0から53の範囲の10進数として表されます。第53週に特別な意味はありません。week('31dec2006'd, 'u')の値は53です。Uはデフォルト値です。

ヒント UおよびWディスクリプタは似ていますが、Uディスクリプタが日曜日を週の第1日とみなすのに対し、Wディスクリプタは月曜日を週の第1日とみなします。
参照項目 Uディスクリプタ

V

1から53の範囲の10進数として表される週番号値を指定します。月曜日が週の第1日とみなされ、年の第1週は、1月4日とその年の最初の木曜日の両方を含む週です。1月の最初の月曜日が2日、3日または4日の場合、それより前の日は前年の最後の週に組み込まれます。

参照項目 Vディスクリプタ

W

1年のうちの週番号を指定します。月曜日が週の第1日とみなされます。週番号値は、0から53の範囲の10進数として表されます。第53週に特別な意味はありません。week('31dec2006'd, 'w')の値は53です。

ヒント UおよびWディスクリプタは似ていますが、Uディスクリプタが日曜日を週の第1日とみなすのに対し、Wディスクリプタは月曜日を週の第1日とみなします。
参照項目 Wディスクリプタ
デフォルト U

詳細

基本

WEEK関数は、SAS日付値を読み取り、週番号を返します。WEEK関数はロケールに依存せず、計算にはグレゴリオ暦のみを使用します。

Uディスクリプタ

Uディスクリプタを使用するWEEK関数は、SAS日付値を読み取り、1年のうちの週番号を返します。週番号値は、0を先頭に最大値53までの0~53の範囲の10進数として表されます。第0週は、週の第1日が前年になるということを意味します。年の第5週は05と表されます。
日曜日が週の第1日とみなされます。たとえば、week('01jan2007'd, 'u')の値は0です。

Vディスクリプタ

Vディスクリプタを使用するWEEK関数は、SAS日付値を読み取り、週番号を返します。週番号値は、01から53の範囲の10進数として表されます。10進数の先頭に0を使用し、最大値は53です。各週は月曜日から始まり、年の第1週は1月4日とその年の最初の木曜日の両方を含む週です。1月の最初の月曜日が2日、3日または4日の場合、それより前の日は前年の最後の週に組み込まれます。次の例では、01jan2006と30dec2005は同じ週になります。この週の第1日(月曜日)は26dec2005です。したがって、week('01jan2006'd, 'v')week('30dec2005'd, 'v')は両方とも値52を返します。つまり、両方の日付が2005年の第52週に含まれるという意味です。

Wディスクリプタ

Wディスクリプタを使用するWEEK関数は、SAS日付値を読み取り、1年のうちの週番号を返します。週番号値は、0を先頭に最大値53までの0~53の範囲の10進数として表されます。第0週は、週の第1日が前年になるということを意味します。年の第5週は05と表されます。
月曜日が週の第1日とみなされます。したがって、week('01jan2007'd, 'w')の値は1です。

ディスクリプタの比較

Uはデフォルトのディスクリプタです。範囲は0から53で、週の第1日は日曜日です。Vディスクリプタの範囲は1から53で、週の第1日は月曜日です。Wディスクリプタの範囲は0から53で、週の第1日は月曜日です。
説明および関連付けられた週を次のリストに示します。
  • 第0週:
    U 現在のグレゴリオ暦年の第1週より前の日を示します。
    V 該当しません。
    W 現在のグレゴリオ暦年の第1週より前の日を示します。
  • 第1週:
    U グレゴリオ暦年の最初の日曜日から始まります。
    V グレゴリオ暦による前年12月29日から当年1月4日までの間の月曜日から始まります。ISO形式の最初の週は、グレゴリオ暦による前年と当年をまたぐことがあります。
    W グレゴリオ暦年の最初の月曜日から始まります。
  • 年末の週:
    U 1年の最後の週(第52または53)の日数を7日未満にできることを指定します。グレゴリオ暦による連続する2年をまたぐ日曜日から土曜日までの期間は、第52週と第0週、または第53週と第0週として指定されます。
    V ISO形式の年の最後の週(第52または53)の日数が7日であることを指定します。ただし、ISO形式の年の最後の週は、グレゴリオ暦の当年と翌年をまたぐことがあります。
    W 1年の最後の週(第52または53)の日数を7日未満にできることを指定します。グレゴリオ暦による連続する2年をまたぐ月曜日から日曜日までの期間は、第52と第0週、または第53週と第0週として指定されます。

特定の年の年末および翌年の年始付近の日付に対するU、VおよびWディスクリプタの値を次の例に示します。すべてのデータセットを確認し、1月1日の曜日によってさまざまなディスクリプタの動作にどのような違いがあるかを示します。出力には最初の20件のオブザベーションが表示されます。
title 'Values of the U, V, and W Descriptors';
data a(drop=i date0 date1 y);
     date0='20dec2005'd;
     do y=0 to 5;
        date1=intnx("YEAR", date0, y, 's');
        do i=0 to 20;
          date=intnx("DAY", date1, i);
          year=YEAR(date);
          week=week(date); 
          week_u=week(date, 'u'); 
          week_v=week(date, 'v'); 
          week_w=week(date, 'w'); 
          output;
        end;
     end;
     format date WEEKDATX17.;
run;
proc print;
run;
U、VおよびWディスクリプタの値の識別による部分出力結果
U、VおよびWディスクリプタの値の識別による部分出力結果

関連項目:

関数:
出力形式:
WEEKUw. Format (SAS出力形式と入力形式: リファレンス)
WEEKVw. Format (SAS出力形式と入力形式: リファレンス)
WEEKWw. Format (SAS出力形式と入力形式: リファレンス)
入力形式:
WEEKUw. Informat (SAS出力形式と入力形式: リファレンス)
WEEKVw. Informat (SAS出力形式と入力形式: リファレンス)
WEEKWw. Informat (SAS出力形式と入力形式: リファレンス)
前のページ|次のページ|ページの先頭へ