# Showing linear regression coefficients

I have just finished my Big Data course for 2017, and noted some concepts that I want to teach better next year. One of them is how to interpret and use the coefficient estimates from linear regression. All economists are familiar with dense tables of coefficients and standard errors, but they require experience to read, and are not at all intuitive. Here is a more intuitive and useful way to display the same information. The blue dots show the coefficient estimates, while the lines show +/- 2 standard errors on the coefficients. It’s easy to see that the first two coefficients are “statistically significant at the 5% level”, the third one is not, and so on. More important, the figure gives a clear view of the relative importance of different variables in determining the final outcomes.

The heavy lifting for this plot is done by the function sjp.lm from the sjPlot library. The main argument linreg is the standard results of a linear regression model, which is a complex list with all kinds of information buried in it.

`sjp.lm``(linreg,`
`       ``axisLabels.y=lab,`
`       ``axisLabelSize=1,`
`       ``breakLabelsAt=30,`

`       ``showStandardBeta=``FALSE``).`

The various options are explained on the documentation page for sjp.lm. There are many other versions of the same idea in the sjPlot library, such as for plotting interaction effects, odds ratios, etc.

Next year I think I will require students to report results this way for their homework. I will also discuss “standardized regression coefficients,” and the broader concept of variable importance as opposed to statistical significance. Statistical significance can be quite high even when the underlying variable is unimportant to the actual results!

The author of this library is apparently Strenge Jacke!, who has written a number of other libraries for convenient analysis that I will have to check out.

## 2 thoughts on “Showing linear regression coefficients”

1. Daniel

Hi Roger,
thanks for your post and mentioning my package(s)! Please note that the argument names have changes, so your example (taken from an older of my blog posts, I guess) won’t work for the current version of sjPlot on CRAN.
Best, Daniel

2. art2science

Daniel, Thanks for the correction. I will turn this into a note for students when it’s time to teach the course again, and at that time I will make sure everything is up to date.