Hi, I'm processing data. I have some specials sets that SAS consider as a currupt and then it ignored.
I have clusters, in some cases SAS ignore all the information on an specific cluster, then I try to run PROC DISCRIM the error appear:
CODE:
proc discrim data=clust method=normal pool=test crossvalidate;
priors proportional;
class cluster;
var &vars;
This code generally work good for others datasets. So, thats not the problem.
ERROR:
I would try counting the non empty classes with something like this:
proc sql;
select count(distinct cluster) into :nClass
from clust
where nmiss(%sysfunc(translate(&var,%str(,),%str( ))))=0;
%if &nClass > 1 %then %do;
proc discrim...
%end;
(untested)
I would try counting the non empty classes with something like this:
proc sql;
select count(distinct cluster) into :nClass
from clust
where nmiss(%sysfunc(translate(&var,%str(,),%str( ))))=0;
%if &nClass > 1 %then %do;
proc discrim...
%end;
(untested)
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.