Description Usage Arguments Details Value Author(s) References See Also Examples
Implementation of the SIMEX algorithm for Accelerated Failure Time model with covariates subject to measurement error.
1 2 3 4 |
formula |
specifies the model to be fitted, with the variables coming with data. This argument has the same format as the formula argument in the existing R function "survreg". |
data |
optional data frame in which to interpret the varialbes occurring in the formula. |
SIMEXvariable |
the index of the covariate variables that are subject to measurement error. |
repeated |
set to TRUE or FALSE to indicate if there are repeated measurements for the mis-measured variables. |
repind |
the index of the repeated measurement variables for each mis-measured variable. It has an R list form. If repeated = TRUE, repind must be specify. |
err.mat |
specifies the variables with measurement error, If repeated = FALSE, err.mat must be specify. |
B |
the number of simulated samples for the simulation step. The default is set to be 50. |
lambda |
the vector of lambdas, the grids for the extrapolation step. |
extrapolation |
specifies the function form for the extrapolation step. The options are linear, quadratic and both. The default is set to be quadratic.(first 4 letters are enough) |
dist |
specifies a parametric distribution that is assumed in AFT model. This argument is the same as the dist option in the existing R function "survreg". These include "weibull", "exponential", "gaussian", "logistic", "lognormal", and "loglogistic". |
If the SIMEXvariable is repeated measured then you only need to use arguments repeated and repind without mention err.mat. The summary.simex will contain repind.
coefficient |
the corrected coefficients of the AFT model |
se |
the standard deviation of each coefficient |
pvalue |
the p-value for the hypothesis of that coefficient equal zero |
scalreg |
the estimate of the scale |
theta |
the estimates for every B and lambda |
lambda |
the vector of lambdas for which the simulation step should be done |
B |
the number of simulated samples for the simulation step. |
formula |
the model to be fitted in the survreg function |
err.mat |
the covariance matrix of the variables with measurement error |
repind |
the list contiains the names of the repeat measument variables |
extrapolation |
the extrapolation method: linear ,quadratic are implemented (first 4 letters are enough) |
SIMEXvariable |
the vector contains the names of the variables with meansurement error |
Juan Xiong, Wenqing He and Grace Y. Yi
Genz, A., Bretz, F., Miwa, T., Mi, X., Leisch, F., Scheipl, F. and Hothorn, T. (2011). mvtnorm: Multivariate Normal and t Distributions. R package version 0.9-9991, URL http://CRAN. R-project.org/package=mvtnorm.
He, W., Yi, G. Y. and Xiong, J. (2007). Accelerated Failure Time Models with Covariates Subject to Measurement Error. Statistics in Medicine, 26, 4817-4832.
Therneau, T. and Lumley, T. (2011). survival: Survival Analysis, Including Penalised Likelihood. R package version 2.36-10, URL http://CRAN.R-project.org/package=survival.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | library("simexaft")
library("survival")
data("BHS")
dataset <- BHS
dataset$SBP <- log(dataset$SBP - 50)
###Naive AFT approach
formula <- Surv(SURVTIME,DTHCENS) ~ SBP + CHOL + AGE + BMI + SMOKE1 + SMOKE2
out1 <- survreg(formula = formula, data = dataset, dist = "weibull")
summary(out1)
###fit a AFT model with quadratic extrapolation
set.seed(120)
ind <- c("SBP", "CHOL")
err.mat <- diag(rep(0.5625, 2))
out2 <- simexaft(formula = formula, data = dataset, SIMEXvariable = ind,
repeated = FALSE, repind = list(), err.mat = err.mat, B = 50,
lambda = seq(0, 2, 0.1),extrapolation = "quadratic", dist = "weibull")
summary(out2)
#################### repeated measurements #################################
data("rhDNase")
###true model
rhDNase$fev.ave <- (rhDNase$fev + rhDNase$fev2)/2
output1 <- survreg(Surv(time2, status) ~ trt + fev.ave, data = rhDNase,
dist = "weibull")
summary(output1)
####sensitive analysis#####
set.seed(120)
fev.error <- rhDNase$fev + rnorm(length(rhDNase$fev), mean = 0,
sd = 0.15 * sd(rhDNase$fev))
fev.error2 <- rhDNase$fev2 + rnorm(length(rhDNase$fev2),mean = 0,
sd = 0.15 * sd(rhDNase$fev2))
dataset2 <- cbind(rhDNase[, c("time2", "status", "trt")], fev.error, fev.error2)
formula <- Surv(time2, status) ~ trt + fev.error
ind <- "fev.error"
########naive model using the average FEV value####################
fev.error.c <- (fev.error + fev.error2)/2
output2 <- survreg(Surv(time2, status) ~ trt + fev.error.c, data = rhDNase,
dist = "weibull")
summary(output2)
######use simexaft and apply the quadratic extrapolation######
formula <- Surv(time2, status) ~ trt + fev.error
output3 <- simexaft(formula = formula, data = dataset2, SIMEXvariable = ind,
repeated=TRUE,repind=list(c("fev.error", "fev.error2")), err.mat=NULL,
B=50, lambda=seq(0,2, 0.1), extrapolation="quadratic", dist="weibull")
summary(output3)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.