I have ID, amount, date in my data sets, and each ID has a number of amount & date.
Now I want to have a sequence variable, that for each ID, the first date has sequence value 1, the second date has sequence value 2, etc. For those with has only 1 date, delete.
can anyone tell me how to do this? I sort by ID and date, and use first.ID and last.ID to loop?
another question is, after I have the sequence variable, I want to use regression (DV=amount, IV=sequence) to see the trend of the amount, positive or negative. I want to have a new data set with only ID and Beta (coefficients).
PROC REG DATA=with_sequence;
BY ID ;
MODEL amount= sequence ;
output out=b;
RUN;
Is this the right way to do it?
Thank you! The first problem solved. I can use this example:
data two;
input class gender score;
cards;
1 1 48
1 1 45
2 2 50
1 2 42
2 1 41
2 2 51
2 1 52
1 1 43
1 2 52
;
run;
proc sort data = two;
by class gender;
run;
data two1;
set two;
count + 1;
by class gender;
if first.gender then count = 1;
run;
proc print data = two1;
run;
For your second question look at the output tables, but you may also be interested in teh ODS output tables. I think the one you're after is called ParameterEstimates.
ods table parameterEstimates=want;
Proc reg......;
*rest of code;
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.