Hi all,
My observations have FOUR variables: ID, DATE, year1 and year2. I want to create times series(frequency: yearly) data between year1 and year2.
I have already use proc transpose to create a variable YEAR which has year1 and year2 for each observation.
for example for observation A, if year1=1995 and year2=2006, then after the proc transpose I will have two observations A1 with YEAR=1995 and A2 with YEAR=2006.
Then I want to create all the time series observations with YEAR between 1995 and 2006. Namely, Year=1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005.
I tried to use proc expand to solve the problem(I did so with monthly data), but the code below does not work:#
proc expand data=mysample out=mysample1 From=year to=year;
by ID Date;
id YEAR;
convert YEAR;
run;
The code does not work. Is it because I should not use Proc expand or is there something wrong with the code? Or could anyone tell how to solve the problem?
Many thanks!
Seems like you need at least one "analysis" variable. Without Y PROC EXPAND says "Nothing to do";
data want (keep=id year);
set have;
do year = year1 to year2;
output;
end;
run;
You have to decide what to do with DATE, though.
Seems like you need at least one "analysis" variable. Without Y PROC EXPAND says "Nothing to do";
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.
Find more tutorials on the SAS Users YouTube channel.