Я использовал следующий код, который отлично работает, чтобы получить следующие результаты:
data No_int_weeksPaid;
set no_internet4;
keep account_number week0-week61;
by account_number;
array week{62} week0-week61;
do i = 1 to 62;
if i > subscription_start and i <= (subscription_end+1) then
week{i} = weeks_paid ;
else
week{i} = 0;
end;
drop i;
run;
дает мне что-то вроде этого:
Account# Week0 week1 week2 week3 week4
1 0 1 1 1 1
1 0 0 0 5 5
2 1 1 1 1 1
2 0 2 2 2 2
2 0 0 0 4 4
Я хочу, чтобы все учетные записи были в одной строке и перезаписывали значения, чтобы получить что-то вроде этого:
Account# Week0 week1 week2 week3 week4
1 0 1 1 5 5
2 1 2 2 4 4
Я думал, что оператор by поможет, но нет