Announcement

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

  • roccomp with clustered data or does rocreg and/or rocregplot give roc curves of one variable stratified by another variable

    I have a data set it has a binary disease (0/1) variable, and an ordinal new scoring tool (1-5) which i am trying to validate, using roc analyses.
    The new test was piloted on a set of data that consists of lesions within people, meaning there are 59 people and 142 lesions-- so some people only have one lesion and some people have more than one lesion, consequently I must use a model that accounts for the inherent clustering of my data.
    There are also person level data such as race, age, medical history etc, for which i would like to compare the ROC curves of the new scire within levels of these demographic variables.


    Consequently, I have been working with rocreg and rocregplrot which allow for the option of cluster(). However, my challenge is I am struggling with findings a way to do a comparable test to roccomp, by() while using rocreg/rocregplot.
    I am able to generate the AUC values, but not in a way that I can directly compare them to each other, and not in a figure...

    This gives me the AUC and a single plot of the score ROC within r1=1 (r1 is one dummy variable i have for race):
    xi:rocreg dz score if r1==1, tiecorrected cluster(patientid) probit
    xi:rocregplot , classvars(score) xtitle("1-Specificity") ytitle("Sensitivity") legend(label "White"))

    This gives me the AUC and a single plot of the score ROC withint r2=1 , but i cannot get these two plots on one graph and i cannot find a way to directly compare the two ROC curves
    xi:rocreg dz score if r1==2, tiecorrected cluster(patientid) probit
    xi:rocregplot , classvars(score) xtitle("1-Specificity") ytitle("Sensitivity") legend(label "African American"))


    using roccomp is so intuitive and so easy.. but the problem is it does not account for my clustered data:
    roccomp dz score, by(RACE) summary
    local pvalue = round(r(p), 0.0001)
    roccomp dz score , by(RACE) graph legend(label(1 "Caucasian") label(2 "African American") label(3 "Unknown") col(1) subtitle("Race") ring(0) position(4) bmargin(large)) note("p-value for ROC ChiSquare comparison: 0`pvalue'")


    any suggestions? advice? thank you.



  • #2
    Just re-reading my post, I apologize for the typos.

    Comment


    • #3
      Hello Greer,
      I'm struggling with a similar problem and was wondering if you found a solution. I want to compare 2 groups of participants that answered True or False on a 1-6 scale that indicated their confidence. As you wrote, Roccomp seems like the ideal solution but I cannot find a way to account for the large number of participants in each group. If you, or anyone else, have a suggestion on how to resolve this problem I will be grateful .
      Thank you

      Comment

      Working...
      X