私はこのことから集まったものから、あなたはウィンドウ(またはビニング)を作成し、追加の変数を、持っていたい過去と未来へのX日に到達する変数。
まず、テストデータを生成します。 SAS日付は数字だけそうです:ダミー変数を生成するために残って次に
%let act_date= 21060;
%let min_date= %eval(&act_date - 5); /*5 days to past*/
%let max_date= %eval(&act_date + 3); /*3 days to future*/
:
data begin;
do i = 21040 to 21080;
my_date= i;
output;
end;
drop i;
run;
次は、私たちが窓を計算今
data refined;
set begin;
if &min_date <= my_date and
my_date <= &max_date then
dummy = 1;
else dummy = 0;
run;
を、1はこのすべてを計算することができます単一のデータではなく、これはより有益な方法です。
編集:あなたが好きなようにウィンドウを指定することができます。あなたのケースでは、あなたは持っている可能性があり:
min_date1= %eval(&act_date - 60);
max_date2= %eval(&act_date - 11);
....
をそれからちょうどまたはオペレータであれば句に追加します。
サンプルデータと試したコードを追加してください。 – Quentin