2

multiplotRpackage运行命令时,是否有人面临与我相同的情况coefplot

即使是示例:

data(diamonds)
model1 <- lm(price ~ carat + cut, data=diamonds)
model2 <- lm(price ~ carat + cut + color, data=diamonds)
model3 <- lm(price ~ carat + color, data=diamonds)
multiplot(model1, model2, model3)

我现在收到以下错误:

Error in get(x, envir = this, inherits = inh)(this, ...) : 
attempt to apply non-function

有什么提示吗?

4

1 回答 1

4

这个答案有点切题,但我发现broomdotwhisker包的稍微更新的组合很有用 -broom是后端(将模型转换为“整洁”的系数数据帧)并且dotwhisker是前端(通过 a 创建图相当薄的ggplot2一层)

library(ggplot2)
library(dotwhisker)
library(broom)

更新:重新安装dotwhiskerv 0.2.0.3,这似乎工作:

dwplot(list(model1,model2,model3))

dwplot(list(m1=model1,m2=model2,m3=model3))如果您想即时选择不同的型号名称,您也可以。

或者,为了更好地控制,您可以自己构建完整的数据框:

mList <- list(carat_cut=model1, carat_cut_color=model2,
              carat_color=model3)
library(plyr)
## extract tidy data frames and combine them ...
mFrame <- ldply(mList,tidy,conf.int=TRUE,.id="model")

现在你可以做

dwplot(mFrame)
于 2016-01-07T23:12:30.563 回答