generating multiple (or repeat) records during data step

Reply
N/A
Posts: 1

generating multiple (or repeat) records during data step

Been a while since I tried this sort of thing with SAS -- probably easy, but at the risk of admitting same...

Suppose I have the following file

Fred     4

Janice   3

James    5

What I'd like to do is take this data set, and re-write it, as follows:

Fred   1

Fred   1

Fred   1

Fred   1

Janice 1

Janice 1

Janice 1

James  1

James  1

James  1

James  1

James  1

In other words, the right-hand field in the original data st is the frequency with which I want to repeat the user (first field) in the new file. So, I want 'Fred' to show up 4 times, Janice 3 times, and James 5 times. And, at the end of each record, the number '1'. 

Respected Advisor
Posts: 4,609

Re: generating multiple (or repeat) records during data step

Easy indeed. This kind of expansion is rarely needed within SAS. Check the FREQ statement available in most SAS procedures.

data have;

input name $ freq;

datalines;

Fred     4

Janice   3

James    5

;

data want;

set have;

one = 1;

do i = 1 to freq;

    output;

    end;

drop freq i;

run;

PG

PG
Ask a Question
Discussion stats
  • 1 reply
  • 158 views
  • 0 likes
  • 2 in conversation