Description Usage Arguments Author(s) References Examples
The reported standard errors are based on the estimated information from the likelihood assuming that the marginals are known.
1 2 3 4 5 6 | twostage(margsurv, data = sys.parent(), score.method = "nlminb", Nit = 60,
detail = 0, clusters = NULL, silent = 1, weights = NULL,
control = list(), theta = NULL, theta.des = NULL, var.link = 1,
iid = 1, step = 0.5, notaylor = 0, model = "plackett",
marginal.trunc = NULL, marginal.survival = NULL, marginal.status = NULL,
strata = NULL, se.clusters = NULL, max.clust = NULL, numDeriv = 1)
|
margsurv |
Marginal model |
data |
data frame |
score.method |
Scoring method |
Nit |
Number of iterations |
detail |
Detail |
clusters |
Cluster variable |
silent |
Debug information |
weights |
Weights |
control |
Optimization arguments |
theta |
Starting values for variance components |
theta.des |
Variance component design |
var.link |
Link function for variance |
iid |
Calculate i.i.d. decomposition |
step |
Step size |
notaylor |
Taylor expansion |
model |
model |
marginal.trunc |
marginal left truncation probabilities |
marginal.survival |
optional vector of marginal survival probabilities |
marginal.status |
related to marginal survival probabilities |
strata |
strata for fitting, see example |
se.clusters |
for clusters for se calculation with iid |
max.clust |
max se.clusters for se calculation with iid |
numDeriv |
to get numDeriv version of second derivative, otherwise uses sum of squared score |
Thomas Scheike
Clayton-Oakes and Plackett bivariate survival distributions,
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 | data(diabetes)
# Marginal Cox model with treat as covariate
margph <- coxph(Surv(time,status)~treat,data=diabetes)
### Clayton-Oakes, from timereg
fitco1<-two.stage(margph,data=diabetes,theta=1.0,detail=0,Nit=40,clusters=diabetes$id)
summary(fitco1)
### Plackett model
fitp<-twostage(margph,data=diabetes,theta=3.0,Nit=40,
clusters=diabetes$id,var.link=1)
summary(fitp)
### Clayton-Oakes
fitco2<-twostage(margph,data=diabetes,theta=0.0,detail=0,
clusters=diabetes$id,var.link=1,model="clayton.oakes")
summary(fitco2)
fitco3<-twostage(margph,data=diabetes,theta=1.0,detail=0,
clusters=diabetes$id,var.link=0,model="clayton.oakes")
summary(fitco3)
### without covariates using Aalen for marginals
marg <- aalen(Surv(time,status)~+1,data=diabetes,n.sim=0,max.clust=NULL,robust=0)
fitpa<-twostage(marg,data=diabetes,theta=1.0,detail=0,Nit=40,
clusters=diabetes$id,score.method="optimize")
summary(fitpa)
fitcoa<-twostage(marg,data=diabetes,theta=1.0,detail=0,Nit=40,clusters=diabetes$id,
var.link=1,model="clayton.oakes")
summary(fitcoa)
### Piecewise constant cross hazards ratio modelling
########################################################
d <- subset(simClaytonOakes(2000,2,0.5,0,stoptime=2,left=0),!truncated)
udp <- piecewise.twostage(c(0,0.5,2),data=d,score.method="optimize",
id="cluster",timevar="time",
status="status",model="clayton.oakes",silent=0)
summary(udp)
### Same model using the strata option, a bit slower
########################################################
## makes the survival pieces for different areas in the plane
##ud1=surv.boxarea(c(0,0),c(0.5,0.5),data=d,id="cluster",timevar="time",status="status")
##ud2=surv.boxarea(c(0,0.5),c(0.5,2),data=d,id="cluster",timevar="time",status="status")
##ud3=surv.boxarea(c(0.5,0),c(2,0.5),data=d,id="cluster",timevar="time",status="status")
##ud4=surv.boxarea(c(0.5,0.5),c(2,2),data=d,id="cluster",timevar="time",status="status")
## everything done in one call
ud <- piecewise.data(c(0,0.5,2),data=d,timevar="time",status="status",id="cluster")
ud$strata <- factor(ud$strata);
ud$intstrata <- factor(ud$intstrata)
## makes strata specific id variable to identify pairs within strata
## se's computed based on the id variable across strata "cluster"
ud$idstrata <- ud$id+(as.numeric(ud$strata)-1)*2000
marg2 <- aalen(Surv(boxtime,status)~-1+factor(num):factor(intstrata),
data=ud,n.sim=0,robust=0)
tdes <- model.matrix(~-1+factor(strata),data=ud)
fitp2<-twostage(marg2,data=ud,se.clusters=ud$cluster,clusters=ud$idstrata,
score.method="fisher.scoring",model="clayton.oakes",
theta.des=tdes,step=0.5)
summary(fitp2)
### now fitting the model with symmetry, i.e. strata 2 and 3 same effect
ud$stratas <- ud$strata;
ud$stratas[ud$strata=="0.5-2,0-0.5"] <- "0-0.5,0.5-2"
tdes2 <- model.matrix(~-1+factor(stratas),data=ud)
fitp3<-twostage(marg2,data=ud,clusters=ud$idstrata,se.cluster=ud$cluster,
score.method="fisher.scoring",model="clayton.oakes",
theta.des=tdes2,step=0.5)
summary(fitp3)
### same model using strata option, a bit slower
fitp4<-twostage(marg2,data=ud,clusters=ud$cluster,se.cluster=ud$cluster,
score.method="fisher.scoring",model="clayton.oakes",
theta.des=tdes2,step=0.5,strata=ud$strata)
summary(fitp4)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.