| makepredictcall {base} | R Documentation |
Utility Function for Safe Prediction
Description
A utility to help model.frame.default create the right
matrices when predicting from models with terms like poly or
ns.
Usage
makepredictcall(var, call)
Arguments
var |
A variable. |
call |
The term in the formula, as a call. |
Details
This is a generic function with methods for poly, bs and
ns: the default method handles scale. If
model.frame.default encounters such a term when
creating a model frame, it modifies the predvars attribute of
the terms supplied to replace the term with one that will work for
predicting new data. For example makepredictcall.ns adds
arguments for the knots and intercept.
To make use of this, have your model-fitting function return the
terms attribute of the model frame, or copy the predvars
attribute of the terms attribute of the model frame to your
terms object.
To extend this, make sure the term creates variables with a class, and write a suitable method for that class.
Value
A replacement for call for the predvars attribute of
the terms.
See Also
model.frame, poly, scale,
bs, ns, cars
Examples
## using poly: this did not work in R < 1.5.0
data(women)
fm <- lm(weight ~ poly(height, 2), data = women)
plot(women, xlab = "Height (in)", ylab = "Weight (lb)")
ht <- seq(57, 73, len = 200)
lines(ht, predict(fm, data.frame(height=ht)))
## see also example(cars)
## see bs and ns for spline examples.