margins :: persp(m1,what =“ prediction”)不适用于因子

时间:2019-08-13 06:57:47

标签: r regression marginal-effects

我正在尝试使用persp()函数绘制一些涉及两个连续变量的3D图,我认为margins包已经(仍)对其进行了增强/替换。由于发现了this bug report,因此我不是100%知道此错误的状态,因此,这是一个已知问题,应该在一年前解决。此外,文档还建议存在margins::persp()函数。但是我的margins不会加载它……尽管它确实接受了graphics::persp()不会接受的参数……我很困惑。

简而言之,"effects"选项效果很好,但是"prediction"选项引发了一个错误,该错误引用了模型中的任何因素。同时

使用iris数据集和"effect"

library(margins)
library(dplyr)
library(purrr)

m1 <- lm(Sepal.Length ~ Petal.Length + Sepal.Width * Species, data = mutate_if(iris, is.character, as.factor))

persp(m1, "Petal.Length", "Sepal.Width", what = "effect")

但是,当我运行它进行“预测”时

persp(m1, "Petal.Length", "Sepal.Width", what = "prediction", data =mutate_if(iris, is.character, as.factor))


#> Warning in model.frame.default(Terms, newdata, na.action = na.action, xlev
#> = object$xlevels): variable 'Species' is not a factor
#> Error: variable 'Species' was fitted with type "factor" but type "numeric" was supplied

像往常一样,任何指针都非常感谢!

0 个答案:

没有答案