R: Estimate variable importances in an earth object

evimp {earth} | R Documentation

## Estimate variable importances in an earth object

### Description

Estimate variable importances in an `earth` object

### Usage

    evimp(object, trim=TRUE, sqrt.=TRUE)

### Arguments

`object` | An `earth` object.
`trim` | If `TRUE` (default), delete rows in the returned matrix for variables that don't appear in any subsets.
`sqrt.` | Default is `TRUE`, meaning take the `sqrt` of the GCV and RSS importances before normalizing to 0 to 100. Taking the square root gives a better indication of relative importances because the raw importances are calculated using a sum of squares. Use `FALSE` to not take the square root.

### Value

This function returns a matrix showing the relative importances of the variables in the model. There is a row for each variable. The row name is the variable name, but with `-unused` appended if the variable does not appear in the final model.

The columns of the matrix are (not all of these are printed by `print.evimp`):

- `col`: Column index of the variable in the `x` argument to `earth`.

- `used`: 1 if the variable is used in the final model, else 0. Equivalently, 0 if the row name has an `-unused` suffix.

- `nsubsets`: Variable importance using the "number of subsets" criterion. Is the number of subsets that include the variable (see "Three Criteria" in the chapter on `evimp` in the `earth` vignette “Notes on the earth package”).

- `gcv`: Variable importance using the GCV criterion (see "Three Criteria").

- `gcv.match`: 1, except is 0 where the rank using the `gcv` criterion differs from that using the `nsubsets` criterion. In other words, there is a 0 for values that increase as you go down the `gcv` column.

- `rss`: Variable importance using the RSS criterion (see "Three Criteria").

- `rss.match`: Like `gcv.match` but for the `rss`.

The rows are sorted on the `nsubsets` criterion. This means that values in the `nsubsets` column decrease as you go down the column (more accurately, they are non-increasing). The values in the `gcv` and `rss` columns are also non-increasing, except where the `gcv` or `rss` rank differs from the `nsubsets` ranking.

### Note

There is a chapter on `evimp` in the `earth` package vignette “Notes on the earth package”.

Acknowledgment

Thanks to Max Kuhn for the original `evimp` code and for helpful discussions.

### See Also

`earth`, `plot.evimp`

### Examples

    data(ozone1)
    earth.mod <- earth(O3 ~ ., data=ozone1, degree=2)
    ev <- evimp(earth.mod, trim=FALSE)
    plot(ev)
    print(ev)

[Package earth version 5.1.2 Index]