fny
fny

Reputation: 33625

Extract Model for Specific Factor

Say I've fit a model as follows fit = lm(Y ~ X + Dummy1 + Dummy2)

How can I extract the regression for a specific dummy variable?

I'm hoping to do something like the following to plot all the regressions:

plot(...)
abline(extracted.lm.dummy1)
abline(extracted.lm.dummy2)

Upvotes: 0

Views: 38

Answers (1)

neilfws
neilfws

Reputation: 33802

I would look into the sjPlot package. Here is the documentation for sjp.lm, which can be used to visualize linear models in various ways. The package also has some nice tools for tabular summaries of models.

An example:

library(sjPlot)
library(dplyr)

# add a second categorical variable to the iris dataset
# then generate a linear model
set.seed(123)
fit <- iris %>% 
  mutate(Category = factor(sample(c("A", "B"), 150, replace = TRUE))) %>%
  lm(Sepal.Length ~ Sepal.Width + Species + Category, data = .)

Different kinds of plot include:

Marginal effects plot, probably closest to what you want

sjp.lm(fit, type = "eff", vars = c("Category", "Species"))

enter image description here

"Forest plot" (beta coefficients + confidence interval)

sjp.lm(fit)

enter image description here

Upvotes: 2

Related Questions