Предположим, у меня есть набор данных SAS, который выглядит следующим образом:
id x
1 1234
2 2345
3 3456
Мне нужен новый набор данных, в котором этот набор данных прочитан (скажем) 2 раза, с новой переменной, указывающей, какая это «репликация»:
id x rep
1 1234 1
2 2345 1
3 3456 1
1 1234 2
2 2345 2
3 3456 2
Важно, чтобы данные читались в точном порядке - весь начальный набор данных читается один раз, затем снова и т. Д.
Есть идеи по эффективному способу сделать это на этапе данных? (На самом деле мой набор данных огромен, мне нужно прочитать его несколько раз, и я хочу избежать сортировки.)
Я пробовал это, но порядок наблюдений в новом наборе данных не тот, который я хочу:
data foo;
set tmp; rep=1; output;
set tmp; rep=2; output;
run;