Fit and Visualize A MARS Model
[This article was first published on Yet Another Blog in Statistical Computing » S+/R, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
################################################# ## FIT A MULTIVARIATE ADAPTIVE REGRESSION ## ## SPLINES MODEL (MARS) USING MDA PACKAGE ## ## DEVELOPED BY HASTIE AND TIBSHIRANI ## ################################################# # LOAD LIBRARIES AND DATA library(MASS); library(mda); data(Boston); # FIT AN ADDITIVE MARS MODEL mars.fit <- mars(Boston[, -14], Boston[14], degree = 1, prune = TRUE, forward.step = TRUE) # SHOW CUT POINTS OF MARS cuts <- mars.fit$cuts[mars.fit$selected.terms, ]; dimnames(cuts) <- list(NULL, names(Boston)[-14]); print(cuts); factor <- mars.fit$factor[mars.fit$selected.terms, ]; dimnames(factor) <- list(NULL, names(Boston)[-14]); print(factor); # EXAMINE THE FITTED FUNCTION BETWEEN EACH IV AND DV par(mfrow = c(3, 5), mar=c(2, 2, 2, 2), pty="s") for (i in 1:13) { xp <- matrix(sapply(Boston[1:13], mean), nrow(Boston), ncol(Boston) - 1, byrow = TRUE); xr <- sapply(Boston, range); xp[, i] <- seq(xr[1, i], xr[2, i], len=nrow(Boston)); xf <- predict(mars.fit, xp); plot(xp[, i], xf, xlab = names(Boston)[i], ylab = "", type = "l"); }
To leave a comment for the author, please follow the link and comment on their blog: Yet Another Blog in Statistical Computing » S+/R.
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.