3

我正在尝试获取 VGAM 模型的回归结果的乳胶或 html 输出(在下面的示例中,它是一个广义的序数 logit)。但是我知道的用于此目的的软件包不适用于 vglm 对象。

在这里,您可以看到一个带有我收到的错误消息的小玩具示例:

library(VGAM)
n <- 1000
x <- rnorm(n)
y <- ordered( rbinom(n, 3, prob=.5) )

ologit <- vglm(y ~ x,
            family =  cumulative(parallel = F , reverse = TRUE), 
            model=T)

library(stargazer)
stargazer(ologit)

对象[[i]]$zelig.call 中的错误:未为此 S4 类定义 $ 运算符

library(texreg)
htmlreg(ologit)

(函数(类,fdef,mtable)中的错误:无法找到签名“vglm”的函数“提取”的继承方法</p>

library(memisc)
mtable(ologit)

UseMethod(“getSummary”)错误:没有适用于“c('vglm','vlm','vlmsmall')”类对象的“getSummary”方法

4

1 回答 1

3

我只是有同样的问题。我的第一个工作是使用包的polr功能运行 OLogit 回归MASS。生成的对象很容易通过通常的包可视化/总结(我推荐表输出sjplot的函数!)tab_model

第二个选项是制作自己的表格,然后通过stargazer.

为此,您需要知道 s4 对象不能以与传统对象相同的方式进行子集化 ( http://adv-r.had.co.nz/Subsetting.html )。最直接的解决方案是对对象进行子集化,即用 an@而不是$符号提取相关方面:

sumobject <- summaryvglm(yourvglmobject)
stargazer(sumpbject@coef3, type="html", out = "RegDoc.doc")

有点麻烦,但它对我有用。希望这可以帮助!

于 2019-04-03T16:45:32.640 回答