I am trying to use the set statement for multiple datasets in one shot namely I have datasets vmoreranked1,vmoreranked2,vmoreranked3,...But constantly getting an error
data stackorig;
set vmoreranked1-vmoreranked&vmcnt; run;
-
22
ERROR 22-322: Syntax error, expecting one of the following: a name, a quoted string, (, ;, END, KEY, KEYS, NOBS, OPEN, POINT, DATA, LAST, NULL.
NOTE: The SAS System stopped processing this step because of errors.
Can someone help?
What version of SAS do you have? This type of syntax is valid in SAS 9.3+
This may be caused by &vmcnt not resolving correctly. Check by replacing this with a number like 2 just to see if it fixes the problem.
My guess: &VMCNT was created by PROC SQL and thus includes leading blanks. The easiest way to overcome this is to add this statement before the DATA step:
%let vmcnt = &vmcnt;
Alternatively (depending on how much subsequent processing has taken place), you might be able to use &SQLOBS instead of &VMCNT.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.