Итак, мой набор данных выглядит следующим образом:
ABC1 ABC2 ABC3 ABC4 ABC5 DEF1 DEF2 DEF3 DEF4 DEF5
1 0 0 1 . 0 1 1 0 .
Я хочу, чтобы мой вывод был:
XYZ1 XYZ2 XYZ3 XYZ4 XYZ5
0 1 1 0 .
В основном, если DEF2 = 1 и число ABC3 и ABC4 и ABC5 равно 1> 0, тогда XYZ2 равно 1.
Я пробовал следующий код, но он не работает
data want;
set have;
array ABC ABC:;
array DEF DEF:;
array XYZ [5] $1;
do i = 1 to dim(ABC)-5;
if ABC(i) = . then XYZ(i) = '';
else if (DEF(i) = 1 and sum(ABC(i+1), ABC(i+3)) > 0) then XYZ(i) = 1;
else XYZ(i) = 0;
end;
drop i;
run;