I would be very grateful for anyone who can help me understand why I'm getting this error
ERROR: There are no valid observations. Could be caused by SUMVAR= or FREQ= variable.
GOPTIONS RESET = ALL;
ODS HTML FILE="C:\SASDATA\carsM.HTM";
PROC MEANS DATA= "C:\SASDATA\cars" MAXDEC=2 N MEAN STD;
VAR brand citympg;
WHERE brand="mazda";
TITLE 'Summary for GROUP A';
RUN;
ODS HTML FILE="C:\SASDATA\carsT.HTM";
PROC MEANS DATA= "C:\SASDATA\cars" MAXDEC=2 N MEAN STD;
VAR brand citympg;
WHERE brand="toyota";
TITLE 'Summary for GROUP B';
RUN;
ODS HTML FILE="C:\SASDATA\carsH.HTM";
PROC MEANS DATA= "C:\SASDATA\cars" MAXDEC=2 N MEAN STD;
VAR brand citympg;
WHERE brand="honda";
TITLE 'Summary for GROUP C';
RUN;
*.......................................CREATE THE BARCHART;
DATA BARCHART;SET "C:\SASDATA\SOMEDATA";
LENGTH HTMLLINK $40;
IF brand="mazda" THEN HTMLLINK='HREF="carsM.HTM"';
IF brand="toyota" THEN HTMLLINK='HREF="carsT.HTM"';
IF brand="honda" THEN HTMLLINK='HREF="carsH.HTM"';
ODS HTML FILE="C:\SASDATA\GCHART.HTM" GPATH="C:\SASDATA\";
ODS LISTING CLOSE;
PROC GCHART;
HBAR brand/ HTML=HTMLLINK;
TITLE 'Summary information for each GP.';
RUN; QUIT;
ODS HTML CLOSE;
ODS LISTING;
WHERE brand="toyota";
Check the case of your brand, it needs to match exactly.
Typically you can try and make everything upper or lower case.
where upcase(brand)="TOYOTA";
And for the rest of the brand= comparisons.
WHERE brand="toyota";
Check the case of your brand, it needs to match exactly.
Typically you can try and make everything upper or lower case.
where upcase(brand)="TOYOTA";
And for the rest of the brand= comparisons.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
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.
Ready to level-up your skills? Choose your own adventure.