I’m trying to create a table that has future years. For example with sashelp.orsales2, I’d like to insert 10 rows per with the same values as the orginal record but with a new column yearFuture that increments by 1 per year e.g. 1999, 2000, 2001… I can see one way to do this as creating a new table with the year column and joining it back to the current table. I do not know the sas syntax for creating the loop for the years in a SAS program.
Can't see any data (don't have SAS available at mo), so maybe something like:
data have; year=2010; var1="A"; var2=12; output; year=2011; var1="B"; var2=45; output; run; data want (drop=i); set have; do i=0 to 9; year=year+i; output; end; run;
Can't see any data (don't have SAS available at mo), so maybe something like:
data have; year=2010; var1="A"; var2=12; output; year=2011; var1="B"; var2=45; output; run; data want (drop=i); set have; do i=0 to 9; year=year+i; output; end; run;
Thanks RW9, this method is very efficient.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.