SAS: умножить строки по значению

У меня есть следующий образец фрейма данных:

DATA queries;
INPUT id :$12. type :$3000. count :3.;
INFILE DATALINES DSD;
DATALINES;
1, Theft, 3
2, Assault, 3
3, Murder, 1
4, Fraud, 1
;
RUN;

Но я бы предпочел, чтобы каждая строка повторялась n раз (в зависимости от значения переменной count). Итак, результат должен быть:

id type    count
1  Theft   3
1  Theft   3    <- new
1  Theft   3    <- new
2  Assault 3
2  Assault 3    <- new
2  Assault 3    <- new
3  Murder  1
4  Fraud   1

Кто-нибудь знает, как умножить строки в SAS?


person D. Studer    schedule 02.04.2020    source источник
comment
Есть ли причина, по которой вам нужно повторять строки данных в соответствии со значением счетчика? Процедуры SAS могут использовать операторы WEIGHT <var> и FREQ <var> для работы с взвешенными и предварительно суммированными (подсчитанными) данными.   -  person Richard    schedule 02.04.2020


Ответы (1)


Попробуй это

data want;
   set queries;
   do _N_ = 1 to count;
      output;
   end;
run;
person draycut    schedule 02.04.2020