Help using Base SAS procedures

is proc expand appropriate?

Reply
New Contributor
Posts: 2

is proc expand appropriate?

I have age-specific rates that are in 5-year age intervals that I want to interpolate to rates for single-years of age. In the past I've done this in excel. Is proc expand the correct procedure? I only see info on changing things from monthly to daily, etc and not from 5-year to 1-year rates.

Thanks in advance for any guidance.

Super User
Posts: 10,020

Re: is proc expand appropriate?

Posted in reply to rachel347

Yeah. I think proc expand can do  that.

Make a year variable.

year

1

2

..

and put it in ID statement of proc expand.

New Contributor
Posts: 2

Re: is proc expand appropriate?

Posted in reply to rachel347

Thank you, Xia, for your help.

In case anyone is wondering what I ended up doing, here is what I did. The results are very close to the data that I was getting when I did the interpolation in excel. 

/*I created an empty dataset with all the ages by 1 so that I would have the correct ages to fill in with the interpolated data:*/

data padded;

do age=15 to 44 by 1;

output;

end;

run;

/*Then I merged that dummy data set onto my data set that had my 5-year fertility rates:*/

data pad;

  merge padded work.fert_rates_2012;

  by age;

run;

/*Then this is the expand options that I used. The convert has the two fertility rate variables--one for hispanic one for non-hispanic and used the age variable as the ID.*/

proc expand data=pad out=expanded method = spline(natural)

extrapolate;

id age;

convert hisp_irate nonhisp_irate;

run;

Ask a Question
Discussion stats
  • 2 replies
  • 229 views
  • 3 likes
  • 2 in conversation