# \donttest{
## ------------------------------------------------------------
##
## survival example with shap-like plot
##
## ------------------------------------------------------------
data(peakVO2, package = "randomForestSRC")
o <- varpro(Surv(ttodead, died)~., peakVO2, ntree = 50)
## canonical standard analysis
imp1 <- ivarpro(o)
shap.ivarpro(imp1)
## non-adaptive analysis
imp2 <- ivarpro(o, adaptive = FALSE)
shap.ivarpro(imp2)
## non-adaptive using a small cut.max
imp3 <- ivarpro(o, cut.max = 0.5, adaptive = FALSE)
shap.ivarpro(imp3)
## ------------------------------------------------------------
##
## synthetic regression example with partial plot
##
## ------------------------------------------------------------
## true regression function
true.function <- function(which.simulation) {
if (which.simulation == 1) {
function(x1, x2) { 1 * (x2 <= .25) +
15 * x2 * (x1 <= .5 & x2 > .25) +
(7 * x1 + 7 * x2) * (x1 > .5 & x2 > .25) }
}
else if (which.simulation == 2) {
function(x1, x2) { r <- x1^2 + x2^2; 5 * r * (r <= .5) }
}
else {
function(x1, x2) { 6 * x1 * x2 }
}
}
## simulation function
simfunction <- function(n = 1000, true.function, d = 20, sd = 1) {
d <- max(2, d)
X <- matrix(runif(n * d, 0, 1), ncol = d)
dta <- data.frame(list(
x = X,
y = true.function(X[, 1], X[, 2]) + rnorm(n, sd = sd)
))
colnames(dta)[1:d] <- paste("x", 1:d, sep = "")
dta
}
## simulate the data
which.simulation <- 1
df <- simfunction(n = 500, true.function(which.simulation))
## varpro analysis
vp <- varpro(y ~ ., df)
## ivarpro analysis
imp <- ivarpro(vp)
## partial plot of x2
partial.ivarpro(imp, var="x2")
## partial plot of x2 without ladder band
partial.ivarpro(imp, var="x2", ladder=FALSE)
## optional: use only a subset of ladder cuts
partial.ivarpro(imp, var="x2", ladder=TRUE, ladder.cuts=1:8)
## partial plot with color/size using x1 (color) and y (size)
partial.ivarpro(imp, var="x2", col.var="x1", size.var="y")
## ------------------------------------------------------------
##
## survival example with partial plot
##
## ------------------------------------------------------------
data(peakVO2, package = "randomForestSRC")
## varpro/importance call
i.pv <- ivarpro(varpro(Surv(ttodead, died)~., peakVO2))
## partial plot of peak vo2
## color displays interval (a measure of exercise time)
## size displays "y" which is predicted mortality in survival
partial.ivarpro(i.pv, var="peak.vo2", col.var="interval", size.var="y")
## same but using beta blockers for color
partial.ivarpro(i.pv, var="peak.vo2", col.var="betablok", size.var="y")
# }Run the code above in your browser using DataLab