Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • How to obtain bootstrap ROC after logistic regression

    I have a binary outcome (positive blood culture, coded 0/1) and a continuous predictor (risk score, where higher number indicates greater risk). I run the following code:
    Code:
    logistic positivebloodculture riskscore, vce(bootstrap, reps(1000) seed(102703) dots(1))
    Now I need a bootstrapped ROC curve from the logistic model. Any suggestions on how I can do this. I use Stata 16.

    Thank you,
    Al Bothwell

  • #2
    To bootstrap the area under the receiver operating characteristic curve, you can try something like the following.

    .ÿ
    .ÿversionÿ16.0

    .ÿ
    .ÿclearÿ*

    .ÿ
    .ÿsetÿseedÿ`=strreverse("1529392")'

    .ÿ
    .ÿwebuseÿhanley

    .ÿquietlyÿexpandÿpop

    .ÿ
    .ÿprogramÿdefineÿbootem
    ÿÿ1.ÿÿÿÿÿÿÿÿÿversionÿ16.0
    ÿÿ2.ÿÿÿÿÿÿÿÿÿsyntax
    ÿÿ3.ÿ
    .ÿÿÿÿÿÿÿÿÿlogitÿdiseaseÿc.rating
    ÿÿ4.ÿÿÿÿÿÿÿÿÿlrocÿ,ÿnograph
    ÿÿ5.ÿend

    .ÿ
    .ÿbootstrapÿrocÿ=ÿr(area),ÿnodots:ÿbootem

    BootstrapÿresultsÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿNumberÿofÿobsÿÿÿÿÿ=ÿÿÿÿÿÿ2,513
    ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿReplicationsÿÿÿÿÿÿ=ÿÿÿÿÿÿÿÿÿ50

    ÿÿÿÿÿÿcommand:ÿÿbootem
    ÿÿÿÿÿÿÿÿÿÿroc:ÿÿr(area)

    ------------------------------------------------------------------------------
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿObservedÿÿÿBootstrapÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿNormal-based
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿCoef.ÿÿÿStd.ÿErr.ÿÿÿÿÿÿzÿÿÿÿP>|z|ÿÿÿÿÿ[95%ÿConf.ÿInterval]
    -------------+----------------------------------------------------------------
    ÿÿÿÿÿÿÿÿÿrocÿ|ÿÿÿ.9886281ÿÿÿ.0018736ÿÿÿ527.65ÿÿÿ0.000ÿÿÿÿÿ.9849558ÿÿÿÿ.9923004
    ------------------------------------------------------------------------------

    .ÿestatÿbootstrapÿ,ÿall

    BootstrapÿresultsÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿNumberÿofÿobsÿÿÿÿÿ=ÿÿÿÿÿÿ2,513
    ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿReplicationsÿÿÿÿÿÿ=ÿÿÿÿÿÿÿÿÿ50

    ÿÿÿÿÿÿcommand:ÿÿbootem
    ÿÿÿÿÿÿÿÿÿÿroc:ÿÿr(area)

    ------------------------------------------------------------------------------
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿObservedÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿBootstrap
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿÿCoef.ÿÿÿÿÿÿÿBiasÿÿÿÿStd.ÿErr.ÿÿ[95%ÿConf.ÿInterval]
    -------------+----------------------------------------------------------------
    ÿÿÿÿÿÿÿÿÿrocÿ|ÿÿÿ.98862809ÿÿ-.0001258ÿÿÿ.00187365ÿÿÿÿ.9849558ÿÿÿ.9923004ÿÿÿ(N)
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ.9834656ÿÿÿ.9917346ÿÿÿ(P)
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ.9850107ÿÿÿ.9917502ÿÿ(BC)
    ------------------------------------------------------------------------------
    (N)ÿÿÿÿnormalÿconfidenceÿinterval
    (P)ÿÿÿÿpercentileÿconfidenceÿinterval
    (BC)ÿÿÿbias-correctedÿconfidenceÿinterval

    .ÿ
    .ÿbootstrapÿrocÿ=ÿr(area),ÿnodotsÿnowarn:ÿroctabÿdiseaseÿrating

    BootstrapÿresultsÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿNumberÿofÿobsÿÿÿÿÿ=ÿÿÿÿÿÿ2,513
    ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿReplicationsÿÿÿÿÿÿ=ÿÿÿÿÿÿÿÿÿ50

    ÿÿÿÿÿÿcommand:ÿÿroctabÿdiseaseÿrating
    ÿÿÿÿÿÿÿÿÿÿroc:ÿÿr(area)

    ------------------------------------------------------------------------------
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿObservedÿÿÿBootstrapÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿNormal-based
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿCoef.ÿÿÿStd.ÿErr.ÿÿÿÿÿÿzÿÿÿÿP>|z|ÿÿÿÿÿ[95%ÿConf.ÿInterval]
    -------------+----------------------------------------------------------------
    ÿÿÿÿÿÿÿÿÿrocÿ|ÿÿÿ.9886281ÿÿÿ.0018738ÿÿÿ527.60ÿÿÿ0.000ÿÿÿÿÿ.9849555ÿÿÿÿ.9923007
    ------------------------------------------------------------------------------

    .ÿestatÿbootstrapÿ,ÿall

    BootstrapÿresultsÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿNumberÿofÿobsÿÿÿÿÿ=ÿÿÿÿÿÿ2,513
    ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿReplicationsÿÿÿÿÿÿ=ÿÿÿÿÿÿÿÿÿ50

    ÿÿÿÿÿÿcommand:ÿÿroctabÿdiseaseÿrating
    ÿÿÿÿÿÿÿÿÿÿroc:ÿÿr(area)

    ------------------------------------------------------------------------------
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿObservedÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿBootstrap
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿÿCoef.ÿÿÿÿÿÿÿBiasÿÿÿÿStd.ÿErr.ÿÿ[95%ÿConf.ÿInterval]
    -------------+----------------------------------------------------------------
    ÿÿÿÿÿÿÿÿÿrocÿ|ÿÿÿ.98862809ÿÿ-.0003885ÿÿÿ.00187381ÿÿÿÿ.9849555ÿÿÿ.9923007ÿÿÿ(N)
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ.9846106ÿÿÿÿ.991626ÿÿÿ(P)
    ÿÿÿÿÿÿÿÿÿÿÿÿÿ|ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ.9850507ÿÿÿ.9919115ÿÿ(BC)
    ------------------------------------------------------------------------------
    (N)ÿÿÿÿnormalÿconfidenceÿinterval
    (P)ÿÿÿÿpercentileÿconfidenceÿinterval
    (BC)ÿÿÿbias-correctedÿconfidenceÿinterval

    .ÿ
    .ÿexit

    endÿofÿdo-file


    .

    Comment


    • #3
      Joseph, thank you for your help.


      Al Bothwell.

      Comment

      Working...
      X