Hi,
I would like to compare a number of models based on their log-likelihood values. The log-likelihood values are saved in one dataset as follows:
A difference of 0.01 between two log-likelihood values is considered to be the same model. I would also like to print the % or number of models that were the same and what observation number it was.
Does anyone know if this is possible? Any help with this would be greatly appreciated!
Hi,
I think no need to compare each value with all the ramaining ones. First sort data based log_likelihood values then use the syntax. It will make the comparison easier.
proc sort data=have;
by log_likelihood;
run;
data want;
set have;
diff = log_likelihood - lag(log_likelihood);
if _n_>1 then do;
if abs(diff)<=0.001 then observation=_n_;
end;
run;
Hi,
Something like this?
data want;
set have;
diff = log_likelihood - lag(log_likelihood);
if _n_>1 then do;
if abs(diff)<=0.001 then observation=_n_;
end;
run;
@stat_sas to determine the number of models that are the same do you not need to compare likelihood 1 with all other likelihood values, likelihood 2 with all other likelihood values, and so on. Not just the value directly following... maybe I need to loop this?
Hi,
I think no need to compare each value with all the ramaining ones. First sort data based log_likelihood values then use the syntax. It will make the comparison easier.
proc sort data=have;
by log_likelihood;
run;
data want;
set have;
diff = log_likelihood - lag(log_likelihood);
if _n_>1 then do;
if abs(diff)<=0.001 then observation=_n_;
end;
run;
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.