coefplot | R Documentation |
Provides an S3 generic method for plotting coefficients from a model so it can be extended to other model types.
A graphical display of the coefficients and standard errors from a fitted model
coefplot
is the S3 generic method for plotting the coefficients from a fitted model.
This can be extended with new methods for other types of models not currently available.
Coefplot method for workflow objects
Coefplot method for parsnip objects
coefplot(model, ...) ## Default S3 method: coefplot( model, title = "Coefficient Plot", xlab = "Value", ylab = "Coefficient", innerCI = 1, outerCI = 2, lwdInner = 1 + interactive * 2, lwdOuter = if (interactive) 1 else unname((Sys.info()["sysname"] != "Windows") * 0.5), pointSize = 3 + interactive * 5, color = "blue", shape = 16, cex = 0.8, textAngle = 0, numberAngle = 0, zeroColor = "grey", zeroLWD = 1, zeroType = 2, facet = FALSE, scales = "free", sort = c("natural", "magnitude", "alphabetical"), decreasing = FALSE, numeric = FALSE, fillColor = "grey", alpha = 1/2, horizontal = FALSE, factors = NULL, only = NULL, shorten = TRUE, intercept = TRUE, interceptName = "(Intercept)", coefficients = NULL, predictors = NULL, strict = FALSE, trans = identity, interactive = FALSE, newNames = NULL, plot = TRUE, ... ) ## S3 method for class 'lm' coefplot(...) ## S3 method for class 'glm' coefplot(...) ## S3 method for class 'workflow' coefplot(model, ...) ## S3 method for class 'model_fit' coefplot(model, ...) ## S3 method for class 'rxGlm' coefplot(...) ## S3 method for class 'rxLinMod' coefplot(...) ## S3 method for class 'rxLogit' coefplot(...)
model |
A parsnip object |
... |
All arguments are passed on to |
title |
The name of the plot, if NULL then no name is given |
xlab |
The x label |
ylab |
The y label |
innerCI |
How wide the inner confidence interval should be, normally 1 standard deviation. If 0, then there will be no inner confidence interval. |
outerCI |
How wide the outer confidence interval should be, normally 2 standard deviations. If 0, then there will be no outer confidence interval. |
lwdInner |
The thickness of the inner confidence interval |
lwdOuter |
The thickness of the outer confidence interval |
pointSize |
Size of coefficient point |
color |
The color of the points and lines |
shape |
The shape of the points |
cex |
The text size multiplier, currently not used |
textAngle |
The angle for the coefficient labels, 0 is horizontal |
numberAngle |
The angle for the value labels, 0 is horizontal |
zeroColor |
The color of the line indicating 0 |
zeroLWD |
The thickness of the 0 line |
zeroType |
The type of 0 line, 0 will mean no line |
facet |
logical; If the coefficients should be faceted by the variables, numeric coefficients (including the intercept) will be one facet. Currently not available. |
scales |
The way the axes should be treated in a faceted plot. Can be c("fixed", "free", "free_x", "free_y"). Currently not available. |
sort |
Determines the sort order of the coefficients. Possible values are c("natural", "magnitude", "alphabetical") |
decreasing |
logical; Whether the coefficients should be ascending or descending |
numeric |
logical; If true and factors has exactly one value, then it is displayed in a horizontal graph with continuous confidence bounds. Currently not available. |
fillColor |
The color of the confidence bounds for a numeric factor. Currently not available. |
alpha |
The transparency level of the numeric factor's confidence bound. Currently not available. |
horizontal |
logical; If the plot should be displayed horizontally. Currently not available. |
factors |
Vector of factor variables that will be the only ones shown |
only |
logical; If factors has a value this determines how interactions are treated. True means just that variable will be shown and not its interactions. False means interactions will be included. |
shorten |
logical or character; If |
intercept |
logical; Whether the Intercept coefficient should be plotted |
interceptName |
Specifies name of intercept it case it is not the default of "(Intercept"). |
coefficients |
A character vector specifying which factor coefficients to keep. It will keep all levels and any interactions, even if those are not listed. |
predictors |
A character vector specifying which coefficients to keep. Each individual coefficient can be specified. Use predictors to specify entire factors. |
strict |
If TRUE then predictors will only be matched to its own coefficients, not its interactions |
trans |
A transformation function to apply to the values and confidence intervals. |
interactive |
If |
newNames |
Named character vector of new names for coefficients |
plot |
logical; If the plot should be drawn, if false then a data.frame of the values will be returned |
Currently, methods are available for lm, glm and rxLinMod objects.
For more information on this function and it's arguments see coefplot.default
Pulls model element out of workflow object then calls coefplot
.
Pulls model element out of parsnip object then calls coefplot
.
A ggplot2 object or data.frame. See details in coefplot.lm
for more information
If plot
is TRUE
then a ggplot
object is returned. Otherwise a data.frame
listing coefficients and confidence bands is returned.
A ggplot object. See coefplot.lm
for more information.
A ggplot object. See coefplot.lm
for more information.
A ggplot object. See coefplot.lm
for more information.
default
: Default method
lm
: lm
glm
: glm
workflow
: tidymodels workflows
model_fit
: parsnip
rxGlm
: rxGlm
rxLinMod
: rxLinMod
rxLogit
: rxLogit
Jared P. Lander
coefplot.lm
coefplot.data.frame
lm
glm
ggplot
coefplot
plotcoef
data(diamonds) head(diamonds) model1 <- lm(price ~ carat + cut*color, data=diamonds) model2 <- lm(price ~ carat*color, data=diamonds) model3 <- glm(price > 10000 ~ carat*color, data=diamonds) coefplot(model1) coefplot(model2) coefplot(model3) coefplot(model1, predictors="color") coefplot(model1, predictors="color", strict=TRUE) coefplot(model1, coefficients=c("(Intercept)", "color.Q")) coefplot(model1, predictors="cut", coefficients=c("(Intercept)", "color.Q"), strict=TRUE) coefplot(model1, predictors="cut", coefficients=c("(Intercept)", "color.Q"), strict=FALSE) coefplot(model1, predictors="cut", coefficients=c("(Intercept)", "color.Q"), strict=TRUE, newNames=c(color.Q="Color", "cut^4"="Fourth")) coefplot(model1, predictors=c("(Intercept)", "carat"), newNames=c(carat="Size")) coefplot(model1, predictors=c("(Intercept)", "carat"), newNames=c(carat="Size", "(Intercept)"="Constant")) data(diamonds) head(diamonds) model1 <- lm(price ~ carat + cut*color, data=diamonds) model2 <- lm(price ~ carat*color, data=diamonds) coefplot(model1) coefplot(model2) coefplot(model1, predictors="color") coefplot(model1, predictors="color", strict=TRUE) coefplot(model1, coefficients=c("(Intercept)", "color.Q")) model1 <- lm(price ~ carat + cut*color, data=diamonds) coefplot(model1) model2 <- glm(price > 10000 ~ carat + cut*color, data=diamonds, family=binomial(link="logit")) coefplot(model2) coefplot(model2, trans=invlogit) ## Not run: mod4 <- rxGlm(price ~ carat + cut + x, data=diamonds) mod5 <- rxGlm(price > 10000 ~ carat + cut + x, data=diamonds, family="binomial") coefplot(mod4) coefplot(mod5) ## End(Not run) ## Not run: data(diamonds) mod3 <- rxLinMod(price ~ carat + cut + x, data=diamonds) coefplot(mod3) ## End(Not run) ## Not run: data(diamonds) mod6 <- rxLogit(price > 10000 ~ carat + cut + x, data=diamonds) coefplot(mod6) ## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.