[R] Weibull maximum likelihood estimates for censored data

Terry Therneau therneau at mayo.edu
Wed Apr 9 15:15:29 CEST 2008


> I have a matrix with data and a column indicating whether it is censored
> or not.  Is there a way to apply weibull and exponential maximum
> likelihood estimation directly on the censored data, like in the paper:
> Backtesting Value-at-Risk: A Duration-Based Approach, P Chrisoffersen
> and D Pelletier (October 2003) page 8?

 It would be easier to use the survreg function, which is part of the survival 
library.  It will fit MLE estimates of the exponential, Weibull, log-normal, and 
others.
 
 >library(survival)
 > survreg(Surv(D, C) ~1, data=Interest)

 Coefficients:
(Intercept) 
   5.531319 

Scale= 1.303637 

Loglik(model)= -12.3   Loglik(intercept only)= -12.3

 
 Notes:
   1. The survreg function uses a location/scale parameterization of the 
Weibull.  Kalbfleisch and Prentice, "The statistical analysis of failure time 
data" is the standard text for this.  There are several others.  A simple online 
reference is a technical report from earlier versions of the survival package, 
TR #53 available at www.mayo.edu/biostatistics.  (Somewhat dated wrt newer 
options in the package, but sufficient for your purposes).
   
   2. You give page numbers but no journal name in your reference.
   
   3. I don't know whether your variable "C" has 1=censored or 1=uncensored.  
The survreg function expects the latter.  You can just change the call to 
survreg(Surv(D, 1-C) ~1) if yours is otherwise.
   
   4. The rest of your message is a set of nested functions with hardly a single 
comment.  It is very difficult for an outside reader to comment on "what went 
wrong" without further hints about what it is that you are actually trying to 
compute.
   
   	Terry Therneau



More information about the R-help mailing list