How to Remove Variables in Plot_Summs?

How to Remove Variables in Plot_Summs?

I use plot_summs to plot my regression coefficients. below is a reproducible sample. I want to do two things. First, I want to remove Frost and Murder from the graph. Second, I want to change the color of Illiteracy and Population to Green and Life Exp and HS Grad to red. I’d appreciate any help I can get here.

fit1 <- lm(Income ~ Frost + Illiteracy + Murder +
         Population + Area + Life Exp + HS Grad,
       data = states, weights = runif(50, 0.1, 3))
plot_summs(fit1, scale = TRUE)

1 Answer

Without using the jtools package:

If I'm not wrong, plot_summ with scale - TRUE, scales the independent variables and plots the summary of the variable estimates, with mean as point and 2*SE as segments.

states2 <- states
states2[,-1] <- scale(states2[,-1]) # Considering first column is Income

fit2 <- lm(Income ~ ., data = states2, weights = runif(50, 0.1, 3))

df <- as.data.frame(summary(fit2)[["coefficients"]][-1,1:2])
df$variable <- rownames(df)

df <- df[!df$variable %in% c("Frost", "Murder"), ]


library(ggplot2)

ggplot(df) + 
  geom_point(aes(x = variable, y = Estimate,
                 color = variable), size = 6) +
  geom_segment(aes(x = variable, xend = variable, 
                   y = Estimate - (2 * `Std. Error`),
                   yend = Estimate + (2 * `Std. Error`),
                   color = variable), lwd = 2) +
  scale_color_manual(values = c("Illiteracy" = "green","Population" = "green",
                                "Area" = "blue",
                                "`Life Exp`" = "red",  "`HS Grad`" = "red")) +
  coord_flip() +
  theme_classic()

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Chloe Bennett
Author

Chloe Bennett

Chloe Bennett explores the intersection of pop culture, streaming entertainment, digital trends, and contemporary lifestyle. Her weekly commentary reaches thousands of culture enthusiasts.