Hi @Rick_SAS sorry for the delay I'm writing. Briefly, referring to the article You suggested to use, I've considered only the first dataset (roc) for simplicity. So.... this is what I've done up to now /*estimating a cut-off value for alb*/
proc logistic data=roc plots=roc;
model popind(event='0')=alb / outroc=roc_alb;
roc 'alb' alb;
output out=out_alb p=pred;
run;
/*Youden index*/
data roc_alb2(keep=cutoff prob Sensitivity Specificity Youden);
set roc_alb;
logit=log(_prob_/(1-_prob_));
cutoff=(logit-2.4646)/-1.0520;
prob=_prob_;
Sensitivity=_SENSIT_;
Specificity=1-_1MSPEC_;
Youden=_SENSIT_+ (1-_1MSPEC_)-1;
run;
proc sort data=roc_alb2;
by descending Youden;
run;
proc print data=roc_alb2;
title 'cut off - alb';
run;
/*95%CI of cut-off*/
proc probit data=roc inversecl(prob=0.33370);
model popind(event='0')=alb / d=logistic;
title 'cut-off with 95% CI - alb';
run;
/*95%CI of Sensitivity and Specificity*/
data out_alb;
set out_alb;
if pred>0.33 then pop_alb=1;
else pop_alb=0;
run;
title 'Sensitivity - pop_alb';
proc freq data=out_alb;
where popind=0;
tables pop_alb / binomial(level="1");
exact binomial;
run;
title 'Specificity - pop_alb';
proc freq data=out_alb;
where popind=1;
tables pop_alb / binomial(level="0");
exact binomial;
run;
/*likelihood ratio albumin*/
proc genmod data=out_alb descending;
class popind pop_alb;
model pop_alb=popind / dist=binomial link=identity noint;
store genfit;
run;
data fd;
length label f $32767;
infile datalines delimiter=',';
input label f;
datalines;
LR+, b_p1/b_p2
LR-, (1-b_p1)/(1-b_p2)
;
title 'Likelihood Ratio - pop_alb';
%NLEST(instore=genfit, fdata=fd, df=10); I've also attached the results I've found So I finally come to my question: I'm wondering how to repeat these analyses after bootstrapping. Tks again
... View more