# predict.earth

##### Predict with an earth model

Predict with an `earth`

model.

- Keywords
- models

##### Usage

```
## S3 method for class 'earth':
predict(object = stop("no 'object' argument"), newdata = NULL,
type = c("link", "response", "earth", "class", "terms"),
interval = "none", level = .95,
thresh = .5, trace = FALSE, ...)
```

##### Arguments

- object
- An
`earth`

object. This is the only required argument. - newdata
- Make predictions using
`newdata`

, which can be a data frame, a matrix, or a vector with length equal to a multiple of the number of columns of the original input matrix`x`

. Note that this is more flexible than the predic - type
- Type of prediction.
One of
`"link"`

(default),`"response"`

,`"earth"`

,`"class"`

, or`"terms"`

. See the**Note**below. - interval
- Return prediction or confidence levels.
Default is
`"none"`

. Use`interval="pint"`

to get prediction intervals on new data. Requires that the earth model was built with`varmod.method`

. This argument gets passed - level
- Confidence level for the
`interval`

argument. Default is`.95`

, meaning construct 95% confidence bands (estimate the 2.5% and 97.5% levels). - thresh
- Threshold, a value between 0 and 1 when predicting a probability.
Only applies when
`type="class"`

. Default is .5. See the**Note**below. - trace
- Default
`FALSE`

. Set to`TRUE`

to see which data, subset, etc.`predict.earth`

is using. - ...
- Unused, but provided for generic/method consistency.

##### Value

- The predicted values (a matrix for multiple response models).
If

`type="terms"`

, a matrix with each column showing the contribution of a predictor.If

`interval="pint"`

or`"cint"`

, a matrix with three columns:`fit`

: the predicted values`lwr`

: the lower confidence or prediction limit`upr`

: the upper confidence or prediction limitIf

`interval="se"`

, the standard errors.

##### Note

**Predicting with standard earth models**

Use the default `type="link"`

, or possibly `type="class"`

.

Actually, the `"link"`

, `"response"`

, and `"earth"`

choices all return the same value unless the `glm`

argument
was used in the original call to `earth`

.

**Predicting with earth-GLM models**

This section applies to earth models with a GLM component, i.e.,
when the `glm`

argument was used
in the original call to `earth`

.

The `"link"`

and `"response"`

options:
see `predict.glm`

for a description of these.
In brief: for logistic models
use `type="link"`

to get log-odds and
`type="response"`

to get probabilities.

Use option `"earth"`

to get the linear fit (this gives the prediction you would get
if your original call to earth had no `glm`

argument).

**Predicting with "class"**

Use option `"class"`

to get the predicted class.
With option `"class"`

, this function first makes predictions with
`type="response"`

and then assigns the predicted values to classes as follows:

(i) When the response is a *logical*, predict `TRUE`

if
the predicted probability is greater than `thresh`

.

(ii) When the response is a *numeric*, predict `TRUE`

if
the predicted value is greater than `thresh`

.
Actually, this is identical to the above case,
although `thresh`

here may legitimately be a value
outside the 0...1 range.

(iii) When the response is a *two level factor*,
predict the second level if its probability is more than `thresh`

.
In other words, with the default `thresh=.5`

predict the most probable level.

(iv) When the response is a *three or more level factor*,
predict the most probable level (and `thresh`

is ignored).

**Predicting with "terms"**

The `"terms"`

option returns a `"link"`

response suitable for `termplot`

.
Only the additive terms and the first response (for multi-response models) are returned.
Also, `"terms"`

always returns the earth terms, and ignores the GLM component
of the model, if any.

##### See Also

##### Examples

```
data(trees)
earth.mod <- earth(Volume ~ ., data = trees)
predict(earth.mod) # same as earth.mod$fitted.values
predict(earth.mod, c(10,80)) # yields 16.8
```

*Documentation reproduced from package earth, version 4.4.4, License: GPL-3*