Function used in the definition of smooth terms within addreg.smooth
model formulae. The function does not evaluate a smooth --- it exists purely to help
set up a model using smooths.
B(..., knots = NULL, knot.range = 0:5)Iso(...)
variable that this smooth is a function of. Note that unlike gam
,
smooths that are functions of more than one variable are not supported.
unique positions of interior knots of a B-spline basis. Boundary knots are created automatically.
if knots
is not specified, a vector containing a series of non-negative
integers denoting the number of interior knots for which the model will be fit.
These are placed at evenly-spaced quantiles of the observed covariate values.
At least one of knots
or knot.range
must be non-missing.
An object of class "B.smooth"
(for B
) or
"Iso.smooth"
(for Iso
), which is a list with
the following elements:
name of the term
provided in the ...
argument.
label for the term in the model; e.g. for
term "x"
it will be "B(x)"
or
"Iso(x)"
.
vector of interior knots (if
specified). NA
for Iso
.
vector of number of interior knots.
NA
for Iso
.
The function does not evaluate the variable arguments; the output from this function is used when producing the model matrix, at which point the actual basis functions are constructed.
B
is used to specify an order-3 B-spline basis (which can be
restricted to be monotonically non-decreasing via the
mono
argument in addreg.smooth
). If
length(knot.range) > 1
, models with each of the
specified number of interior knots will be fit, and the model
with the best (smallest) aic.c
will be returned.
Iso
is used to specify an isotonic basis, designed
such that the resulting function has non-negative
increments at each observed covariate value. When
Iso
is used, the resulting function will always be
monotonically non-decreasing, regardless of the value of
mono
.
# NOT RUN {
## See example(addreg.smooth) for an example of specifying smooths in model
## formulae.
# }
Run the code above in your browser using DataLab