BookmarkSubscribeRSS Feed
jcis7
Pyrite | Level 9

Hi, I'm new to macros and cannot figure out why this doesn't work:

I have a bunch of questions I'm running the chi-square test on comparing two groups so I'm trying to create a macro.

The question names are:

q1_volun

q1_sec

etc....


I ran the code without the macro and it worked fine using the question names.

center pagesize=45 nonumber nodate symbolgen;


%macro analysis(question);

proc freq data=q1;

tables group*&question./chisq;

title "&question. - Chi-Sq - verifies info";

run;

%mend analysis;
%analysis (q1_vol);

%analysis (q1_sec);

Any help you can give is much appreciated!  Thanks!


4 REPLIES 4
RW9
Diamond | Level 26 RW9
Diamond | Level 26

Hi,

You would need to be more specific, what doesn't work, what errors/warnings in the log, maybe also what data are you using, provide a datastep with some test data.  The code seems fine.

Astounding
PROC Star

The macro looks fine, especially if the same code ran without using a macro.  One thing is suspect, though.  You have a line:

center ... symbolgen;

These are options, so the word OPTIONS should be there:

options center ... symbolgen;

Could that be the problem?

jcis7
Pyrite | Level 9

Thank you everyone! I closed out SAS and opened it and it miraculously worked. 

Haikuo
Onyx | Level 15

If you don't want to restart your SAS, here is some magic strings sometimes may work for you:

*))%*))*/;

;;;;

%mend;

options notes;

run cancel; quit;

proc unk; run;

 

Haikuo

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 1806 views
  • 0 likes
  • 4 in conversation