predict.shrink {shrink} | R Documentation |
Predict Method for Objects of Class shrink
Description
Obtains predictions from shrunken regression coefficients from an object of
class shrink
.
This class of objects is returned by the shrink
function. Objects of this
class have methods for the functions coef
, predict
, print
,
summary
, and vcov
.
Usage
## S3 method for class 'shrink'
predict(
object,
newdata = NULL,
type = c("link", "response", "lp", "risk", "expected", "terms"),
shrinktype = NULL,
terms = NULL,
na.action = na.pass,
collapse,
safe = FALSE,
...
)
Arguments
object |
an object of class |
newdata |
a data frame for which predictions are obtained, otherwise
predictions are based on the data stored in |
type |
the type of prediction required. |
shrinktype |
the type of shrinkage requested, if the |
terms |
with |
na.action |
function determining what should be done with missing values
in |
collapse |
if |
safe |
option from |
... |
additional arguments to be passed to methods. |
Value
A vector or matrix of predictions.
Note
If object
was obtained using type = "all"
, shrinktype
specifies for which type of shrinkage predictions are requested.
shrinktype
will be ignored if object
was obtained using
either type = "parameterwise"
or type = "global"
.
See Also
shrink
, coef.shrink
, print.shrink
,
summary.shrink
, vcov.shrink
Examples
data("GBSG")
library("mfp")
fit <- mfp(Surv(rfst, cens) ~ fp(age, df = 4, select = 0.05) +
fp(prm, df = 4, select = 0.05), family = cox, data = GBSG)
dfbeta.global <- shrink(fit, type = "global", method = "dfbeta")
dfbeta.pw <- shrink(fit, type = "parameterwise", method = "dfbeta")
dfbeta.join <- shrink(fit, type = "parameterwise", method = "dfbeta",
join=list(c("age.1", "age.2")))
age <- 30:80
newdat <- data.frame(age = age, prm = 0)
refdat <- data.frame(age = 50, prm = 0)
# unshrunken
plot(age, predict(fit, newdata = newdat, type = "lp") -
predict(fit, newdata = refdat, type = "lp"), xlab = "Age",
ylab = "Log hazard relative to 50 years", type = "l", lwd = 2)
# globally shrunken
lines(age, predict(dfbeta.global,newdata = newdat, type = "lp") -
predict(dfbeta.global, newdata = refdat, type = "lp"), lty = 3, col = "red", lwd = 2)
# jointly shrunken
lines(age, predict(dfbeta.join, newdata = newdat, type = "lp") -
predict(dfbeta.join, newdata = refdat, type = "lp"), lty = 4, col = "blue", lwd = 2)
# parameterwise shrunken
lines(age, predict(dfbeta.pw, newdata = newdat, type = "lp") -
predict(dfbeta.pw, newdata =refdat, type = "lp"), lty = 2, col = "green", lwd = 2)
legend("topright", lty = c(1, 3, 4, 2), title = "SHRINKAGE",
legend = c("No", "Global", "Joint", "Parameterwise"), inset = 0.01, bty = "n",
col = c("black", "red", "blue", "green"), lwd = 2)