Hi, I'm doing conditional datasets output within a SAS macro:
I already had work.other dataset.
%macro m(w);
data dat1 dat2;
set other; w = &w.;
if diff le &w. then output dat1;
else output dat2; run;
%mend;
It works when I run without the "%macro"
But, when I call the macro by doing "%m(1);", I got an error saying something wrong with the "set":
Statement is not valid or it is used out of proper order.
Thoughts? Thanks!
As the first line of your program, use
options mprint;
Then run the program again, and see if the LOG is more clear and helps you figure out what you did wrong.
If you can't understand what it is telling you, then please copy the log as text (the code AND the error messages) and — DO NOT SKIP THIS STEP — paste it into the window that appears when you click on the {i} icon.
As the first line of your program, use
options mprint;
Then run the program again, and see if the LOG is more clear and helps you figure out what you did wrong.
If you can't understand what it is telling you, then please copy the log as text (the code AND the error messages) and — DO NOT SKIP THIS STEP — paste it into the window that appears when you click on the {i} icon.
Thanks! I got my problem solved.
... and don't forget to accept an answer as solution in https://communities.sas.com/t5/SAS-Programming/Enumerate-unique-value-by-group/m-p/615834
Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.
Register today!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.
Select SAS Training centers are offering in-person courses. View upcoming courses for: