Announcement

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

  • Limits of agreement betwen two measurements with repeated nested data

    Hello,

    I'm trying to compare different techniques for measuring the electrical activity in hearts using idfferent types of catheters. There are multiple measurements involved such that I have 5 rabbit hearts, each heart was measured in 9 spots, each spot has 10 measurements, and it was measured using 3 different catheters. The goal of the analysis is to compared the 3 different catheters, comparing the new OT catheter with the older V cathether and H catheter. An example of the data is below (although for simplicity limited to 3 rabbits, measured in 2 spots, with 3 repeated measurements), using dataex.

    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input byte(rabbit spot measure) float(ot v h)
    1 1 1 4.7 2.8 5.1
    1 1 2 5.2 2.4 5.3
    1 1 3 3.6 2.9 4.8
    1 2 1 1.3 1.3 3.7
    1 2 2 1.3 1.3 3.7
    1 2 3 1.3 1.3 3.7
    2 1 1   5 3.1 1.8
    2 1 2   5 3.1 1.8
    2 1 3   5 3.1 1.9
    2 2 1 4.9 3.1 1.8
    2 2 2   5 3.1 1.9
    2 2 3 4.9 3.1 1.9
    3 1 1 5.2 7.1 7.1
    3 1 2 5.2   7   7
    3 1 3 5.3   7 7.1
    3 2 1 5.2   7   7
    3 2 2 5.2   7 7.1
    3 2 3 5.2   7   7
    end
    Ordinarily, I would simply use
    Code:
    batplot ot v
    to compare the limits of agreement between two of the measurements, the new OT cathether and the old V catheter. However, that doesn't account for the nested design or repeated measurements. Same with doing a paired t-test,
    Code:
    ttest ot == v
    , would tell me if the mean difference between these two measures was different from zero, but again not account for the nested deign and multiple measurements.

    Is there some method for accounting for repeated measures in these analyses when using a Bland Altman analysis? I'm using Stata version 12 on Mac.

    Help is much appreciated.

    Thanks,

    Chris

  • #2
    I'm not aware of a generalization of the Bland Altman analysis that applies to this more complex situation.

    I would probably approach this as a multi-level nested model, with catheter as a fixed effect, and repeats (measure) nested in spots nested in rabbits. Then I would look at the contrasts among the expected values for the different catheters (in this case probably pairwise) and the intraclass correlation at the lowest level. So, like this:

    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input byte(rabbit spot measure) float(ot v h)
    1 1 1 4.7 2.8 5.1
    1 1 2 5.2 2.4 5.3
    1 1 3 3.6 2.9 4.8
    1 2 1 1.3 1.3 3.7
    1 2 2 1.3 1.3 3.7
    1 2 3 1.3 1.3 3.7
    2 1 1   5 3.1 1.8
    2 1 2   5 3.1 1.8
    2 1 3   5 3.1 1.9
    2 2 1 4.9 3.1 1.8
    2 2 2   5 3.1 1.9
    2 2 3 4.9 3.1 1.9
    3 1 1 5.2 7.1 7.1
    3 1 2 5.2   7   7
    3 1 3 5.3   7 7.1
    3 2 1 5.2   7   7
    3 2 2 5.2   7 7.1
    3 2 3 5.2   7   7
    end
    
    rename (ot v h) result=
    reshape long result, i(rabbit spot measure) j(_catheter) string
    encode _catheter, gen(catheter)
    drop _catheter
    
    mixed result i.catheter || rabbit: || spot:
    estat icc
    margins catheter
    margins catheter, pwcompare

    Comment


    • #3
      Thanks Clyde. I didn't think Bland Altman limits of agreement had ever been used for more complex data sets like this, but I thought I would ask nonetheless. Thanks for the reply. I suppose, I was always going to have to use a nested model, but your code is far more elegant. Much obliged.

      Comment

      Working...
      X