在 coefplot 中手动排序系数
manually order coefficients in coefplot
我想手动对 coefplot
中的系数进行排序。之前的questions只能实现按(减少)magnitude
排序,这不是我想要的
考虑以下示例:
library(coefplot)
data(tips, package = "reshape2")
mod1 <- lm(tip ~ day + sex + smoker + sex * smoker, data = tips)
coefplot.glm(mod1)
如何在不依赖大小的情况下实现 sexMale:smokerYes
和 daySat
、dayThu
、daySun
(然后是其余部分)的系数顺序?
提前感谢您指出解决方案。 :)
因为coefplot.glm()
正在输出一个ggplot
对象,您可以访问数据对象并重新调整y因子:
创建ggplot
对象
library(coefplot)
data(tips, package = "reshape2")
mod1 <- lm(tip ~ day + sex + smoker + sex * smoker, data = tips)
gg <- coefplot.glm(mod1)
gg
重新调整 y 因子
gg$data$Coefficient <- factor(gg$data$Coefficient, levels = rev(c("sexMale:smokerYes", "daySat", "dayThur", "daySun", "smokerYes", "sexMale", "(Intercept)")))
gg
我想手动对 coefplot
中的系数进行排序。之前的questions只能实现按(减少)magnitude
排序,这不是我想要的
考虑以下示例:
library(coefplot)
data(tips, package = "reshape2")
mod1 <- lm(tip ~ day + sex + smoker + sex * smoker, data = tips)
coefplot.glm(mod1)
如何在不依赖大小的情况下实现 sexMale:smokerYes
和 daySat
、dayThu
、daySun
(然后是其余部分)的系数顺序?
提前感谢您指出解决方案。 :)
因为coefplot.glm()
正在输出一个ggplot
对象,您可以访问数据对象并重新调整y因子:
创建ggplot
对象
library(coefplot)
data(tips, package = "reshape2")
mod1 <- lm(tip ~ day + sex + smoker + sex * smoker, data = tips)
gg <- coefplot.glm(mod1)
gg
重新调整 y 因子
gg$data$Coefficient <- factor(gg$data$Coefficient, levels = rev(c("sexMale:smokerYes", "daySat", "dayThur", "daySun", "smokerYes", "sexMale", "(Intercept)")))
gg