Ok, I should explain the header better.
Let's say I have a data set like this:
PERMNO DATE Y X1 X2 X3
A 100 xx xx xx xx
A 100 xx xx xx xx
A 100 xx xx xx xx
B ......
B
B
C
C
C
Basically, I want to run multiple regression models.
For example, Y ~ x1. Y~ x2, Y~X3, ...
In my real data set there are more than 10 variables.
I know that for a single model, I can run something like this:
proc reg data = have out = want; by permno date; model y = x1; run;
But what shoud I do if I want to do a loop through my variables, so that I get all of models, y ~ x1, y~x2, y~x3 in one table. Can it possibly done in one proc reg, or should I define multiple ones and append them together?
I appreciate any help.
Thanks!
Transform your data and use by processing. Here is an example with sashelp.class:
data longClass;
set sashelp.class;
array a{*} age height;
do i = 1 to dim(a);
var = vname(a{i});
value = a{i};
output;
end;
drop i age height;
run;
proc sort data=longClass; by sex var; run;
proc reg data=longClass plots=none;
by sex var;
model weight = value;
run;
Transform your data and use by processing. Here is an example with sashelp.class:
data longClass;
set sashelp.class;
array a{*} age height;
do i = 1 to dim(a);
var = vname(a{i});
value = a{i};
output;
end;
drop i age height;
run;
proc sort data=longClass; by sex var; run;
proc reg data=longClass plots=none;
by sex var;
model weight = value;
run;
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.
Find more tutorials on the SAS Users YouTube channel.