s-news
[Top] [All Lists]

coxme bug

To: s-news@wubios.wustl.edu
Subject: coxme bug
From: Terry Therneau <therneau@mayo.edu>
Date: Mon, 25 Apr 2005 17:42:28 -0500 (CDT)
  I have found a major bug in coxme library, routine coxme.varcheck.s.  The 
definition of "major" is that you can get wrong answers, without any warning. 

If --    A varlist was provided, containing multiple variance matrices,
   and   the rescale=T argument is set (the default)
   and   one of the matrices other than the first one on the list is rescaled
   and   the first element of the list is not a bdsI() term
  then   the list is corrupted.

  This will mostly affect people using fits with kinship matrices, which often
have 1/2 on the diagonal.

   A copy of the repaired routine can be found for the next few days at
ftp://ftp.mayo.edu/pub/therneau (anonymous ftp).  The library containing all
of the functions found on the department web page www.mayo.edu/biostatistics
has also been updated. 

        Terry Therneau

-----------------------------------


  Detail: Suppose we have the call

> fit <- coxme(Surv(time, status) ~ x1, data=mydata, random= ~1|id,
                  varlist=list(var1, var2, var3))

and var3 has diagonal elements of 1/2.  The correct result of coxme.varcheck
would be 
      list(var1, var2, 2*var3)
the current result is
      list(2*var3, var2, var3)
the result being that coxme just plain fits the wrong model.  (It fits it
correctly, just not the model we think it is fitting.)  

  Thanks to Gilda Garibotti for pointing out the problem.  She had, luckily
for us, done fits one time with list(var1, var2) and another time as
list(var2, var1), and got different answers.  In my defense, we have
tested lots of models with multiple variance matrices, but never
encountered the problem (I tend to rescale my kinship matrices before
plugging them into coxme).
  

<Prev in Thread] Current Thread [Next in Thread>
  • coxme bug, Terry Therneau <=