Acquire Partial Effect of a Variable
Acquire the partial effect of a variable on the ensembles.
partial.rfsrc(object, oob = TRUE, m.target = NULL, partial.type = NULL, partial.xvar = NULL, partial.values = NULL, partial.xvar2 = NULL, partial.values2 = NULL, partial.time = NULL, get.tree = NULL, seed = NULL, do.trace = FALSE, ...)
object |
An object of class |
oob |
By default out-of-bag values are returned, but inbag
values can be requested by setting this option to |
m.target |
Character value for multivariate families specifying the target outcome to be used. If left unspecified, the algorithm will choose a default target. |
partial.type |
Character value of the type of predicted value. See details below. |
partial.xvar |
Character value specifying the single primary partial x-variable to be used. |
partial.values |
Vector of values that the primary partialy x-variable will assume. |
partial.xvar2 |
Vector of character values specifying the second order x-variables to be used. |
partial.values2 |
Vector of values that the second order
x-variables will assume. Each second order x-variable can only
assume a single value. This the length of |
partial.time |
For survival families, the time at which the predicted
survival value is evaluated at (depends on |
get.tree |
Vector of integer(s) identifying trees over which the partial values are calculated over. By default, uses all trees in the forest. |
seed |
Negative integer specifying seed for the random number generator. |
do.trace |
Number of seconds between updates to the user on approximate time to completion. |
... |
Further arguments passed to or from other methods. |
Out-of-bag (OOB) values are returned by default.
For factors, the partial value should be encoded as a positive integer reflecting the level number of the factor. The actual label of the factor should not be used.
A list of length equal to the number of outcomes (length is one for univariate families) with entries depending on the underlying family:
For regression, the predicted response is returned
of dim [n] x [length(partial.values)]
.
For classification, the predicted probabilities are returned
of dim [n] x [1 + yvar.nlevels[.]] x [length(partial.values)]
.
For survival, the choices are:
Relative frequency of mortality (rel.freq
) or
mortality (mort
) is of dim [n] x
[length(partial.values)]
.
The cumulative hazard function (chf
)
is of dim [n] x [length(partial.time)] x
[length(partial.values)]
.
The survival function (surv
) is of dim [n] x
[length(partial.time)] x [length(partial.values)]
.
For competing risks, the choices are:
The expected number of life years lost (years.lost
)
is of dim [n] x [length(event.info$event.type)] x
[length(partial.values)]
.
The cumulative incidence function (cif
) is of dim
[n] x [length(partial.time)] x
[length(event.info$event.type)] x
[length(partial.values)]
.
The cumulative hazard function (chf
) is of dim
[n] x [length(partial.time)] x [length(event.info$event.type)]
x [length(partial.values)]
.
Hemant Ishwaran and Udaya B. Kogalur
Ishwaran H., Kogalur U.B. (2007). Random survival forests for R, Rnews, 7(2):25-31.
Ishwaran H., Kogalur U.B., Blackstone E.H. and Lauer M.S. (2008). Random survival forests, Ann. App. Statist., 2:841-860.
## ------------------------------------------------------------ ## survival/competing risk ## ------------------------------------------------------------ ## survival data(veteran, package = "randomForestSRC") v.obj <- rfsrc(Surv(time,status)~., veteran, nsplit = 10, ntree = 100) partial.obj <- partial(v.obj, partial.type = "rel.freq", partial.xvar = "age", partial.values = v.obj$xvar[, "age"], partial.time = v.obj$time.interest) ## competing risks data(follic, package = "randomForestSRC") follic.obj <- rfsrc(Surv(time, status) ~ ., follic, nsplit = 3, ntree = 100) partial.obj <- partial(follic.obj, partial.type = "cif", partial.xvar = "age", partial.values = follic.obj$xvar[, "age"], partial.time = follic.obj$time.interest) ## regression airq.obj <- rfsrc(Ozone ~ ., data = airquality) partial.obj <- partial(airq.obj, partial.xvar = "Wind", partial.values = airq.obj$xvar[, "Wind"], oob = FALSE) ## classification iris.obj <- rfsrc(Species ~., data = iris) partial.obj <- partial(iris.obj, partial.xvar = "Sepal.Length", partial.values = iris.obj$xvar[, "Sepal.Length"]) ## multivariate mixed outcomes mtcars2 <- mtcars mtcars2$carb <- factor(mtcars2$carb) mtcars2$cyl <- factor(mtcars2$cyl) mtcars.mix <- rfsrc(Multivar(carb, mpg, cyl) ~ ., data = mtcars2) partial.obj <- partial(mtcars.mix, partial.xvar = "disp", partial.values = mtcars.mix$xvar[, "disp"]) ## second order variable specification mtcars.obj <- rfsrc(mpg ~., data = mtcars) partial.obj <- partial(mtcars.obj, partial.xvar = "cyl", partial.values = c(4, 8), partial.xvar2 = c("gear", "disp", "carb"), partial.values2 = c(4, 200, 3))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.