Description Usage Arguments Details Value References See Also Examples
coxsimtvc
simulates time-varying hazards from
coxph fitted model objects using the normal distribution.
1 2 3 |
obj |
a coxph fitted model object with a time interaction. |
b |
the non-time interacted variable's name. |
btvc |
the time interacted variable's name. |
qi |
character string indicating what quantity of
interest you would like to calculate. Can be
|
Xj |
numeric vector of fitted values for Xj. Must be
the same length as Xl. Default is |
Xl |
numeric vector of fitted values for Xl. Must be
the same length as Xj. Default is |
nsim |
the number of simulations to run per point in
time. Default is |
tfun |
function of time that btvc was multiplied by.
Default is "linear". Can also be "log" (natural log) and
"power". If |
pow |
if |
from |
point in time from when to begin simulating coefficient values |
to |
point in time to stop simulating coefficient values |
by |
time intervals by which to simulate coefficient values |
ci |
the proportion of middle simulations to keep.
The default is |
strata |
logical for whether or not the coxph model used stratification and you would like to simulate the hazard rates for each strata |
Simulates time-varying relative hazards, first
differences, and hazard ratios using parameter estimates
from coxph
models. Can also simulate hazard rates
for multiple strata.
Relative hazards are found using:
RH = e^{β_{1} + β_{2}f(t)}
where f(t) is the function of time.
First differences are found using:
FD = (e^{(X_{j} - X_{l}) (β_{1} + β_{2}f(t))} - 1) * 100
where X_{j} and X_{l} are some values of X to contrast.
Hazard ratios are calculated using:
FD = e^{(X_{j} - X_{l}) (β_{1} + β_{2}f(t))}
When simulating
non-stratifed time-varying harzards coxsimtvc
uses
the point estimates for a given coefficient
\hat{β}_{x} and its time interaction
\hat{β}_{xt} along with the variance matrix
(\hat{V}(\hat{β})) estimated from a
coxph
model. These are used to draw values of
β_{x} and β_{xt} from the
multivariate normal distribution N(\hat{β},\:
\hat{V}(\hat{beta})).
When simulating stratified time-varying hazard rates
H for a given strata k, coxsimtvc
uses:
H_{kx} = \hat{β_{k0}}\exp{\hat{β_{x}} + β_{xt}(t)}
The resulting simulation values can be
plotted using ggtvc
.
a simtvc object
Licht, Amanda A. 2011. “Change Comes with Time: Substantive Interpretation of Nonproportional Hazards in Event History Analysis.” Political Analysis 19: 227–43.
King, Gary, Michael Tomz, and Jason Wittenberg. 2000. “Making the Most of Statistical Analyses: Improving Interpretation and Presentation.” American Journal of Political Science 44(2): 347–61.
ggtvc
, rmultinorm
,
survival
, strata
, and
coxph
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 | # Load Golub & Steunenberg (2007) Data
data("GolubEUPData")
# Load survival package
library(survival)
# Create natural log time interactions
Golubtvc <- function(x){
assign(paste0("l", x), tvc(GolubEUPData, b = x, tvar = "end", tfun = "log"))
}
GolubEUPData$Lcoop <-Golubtvc("coop")
GolubEUPData$Lqmv <- Golubtvc("qmv")
GolubEUPData$Lbacklog <- Golubtvc("backlog")
GolubEUPData$Lcodec <- Golubtvc("codec")
GolubEUPData$Lqmvpostsea <- Golubtvc("qmvpostsea")
GolubEUPData$Lthatcher <- Golubtvc("thatcher")
# Run Cox PH Model
M1 <- coxph(Surv(begin, end, event) ~
qmv + qmvpostsea + qmvpostteu +
coop + codec + eu9 + eu10 + eu12 +
eu15 + thatcher + agenda + backlog +
Lqmv + Lqmvpostsea + Lcoop + Lcodec +
Lthatcher + Lbacklog,
data = GolubEUPData,
ties = "efron")
# Create simtvc object for Relative Hazard
Sim1 <- coxsimtvc(obj = M1, b = "qmv", btvc = "Lqmv",
tfun = "log", from = 80, to = 2000,
by = 15, ci = "99")
# Create simtvc object for First Difference
Sim2 <- coxsimtvc(obj = M1, b = "backlog", btvc = "Lbacklog",
qi = "First Difference",
tfun = "log", from = 80, to = 2000,
by = 15, ci = "99")
# Create simtvc object for Hazard Ratio
Sim3 <- coxsimtvc(obj = M1, b = "backlog", btvc = "Lbacklog",
qi = "Hazard Ratio", Xj = c(191, 229),
Xl = c(0, 0),
tfun = "log", from = 80, to = 2000,
by = 15, ci = "99")
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.