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'. 

Esteemed Advisor
Posts: 5,474

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

Posted in reply to JohnnyCanuck

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
  • 178 views
  • 0 likes
  • 2 in conversation