Hey! I want to write a macro for ANOVAS that tests a number of dependent variables against one independent variable. My current version looks like this: %MACRO anov(input_dataset= , independent_variable= , variable_list=, output_dataset= ); /* Check how man variables are in the list */
%LET M=%WORDS(&variable_list.);
%DO i=1 %TO &M.;
%LET var = %SCAN (&variable_list., &i.);
PROC ANOVA DATA= &input_dataset.;
CLASS &independent_variable.;
MODEL &var. = &independent_variable.;
MEANS &independent_variable.;
ODS OUTPUT Summary=output1 (RENAME=(&var._Mean = Mean &var._STDDEV=STDDEV));
PROC MEANS DATA = &input_dataset. Mean STDDEV;
VAR &var.;
class &independent_variable.;
RUN;
ods output close;
ODS OUTPUT means=anova modelAnova=model2;
PROC ANOVA DATA= &input_dataset.;
CLASS &independent_variable.;
MODEL &var. = &independent_variable.;
MEANS &independent_variable.;
RUN;
Quit;
ods output close;
%END;
%MEND anov; %anov (input_dataset=multiple_sclerosis, independent_variable= ms_form, variable_list=eq5d hp_general_health) Unfortunately, I'm fairly new to SAS and struggling a bit here. The variable ms_form can be 1, 2 or 3. I want my output to have the name of the variable in the first column (so eq5d for the first 3, then hp_general_health) followed by the group means, and the standard derivation, the f-statistics, and the p-value. Anybody knows what exactly I should do? Thanks in advance!
... View more