我有一个代码,以前打印的模型从glms。我现在想在运行confint之后运行它,但是我不能..
有什么想法吗?
谢谢!
library(tidyverse)
library(haven)
library(foreign)
library(mfx)
library(jtools)
library(skimr)
library(kableExtra)
library(nycflights13)
library(dplyr)
library(dotwhisker)
library(MASS)
flights <- nycflights13::flights
flights<- sample_n (flights, 500)
m1<- glm(formula = arr_delay ~ dep_time + origin+ air_time+ distance , data = flights)
kbl <- function (df) {
cat("\n\n")
df2<-kable(df) %>% kable_styling(bootstrap_options = c("striped", "condensed"))
print(df2)
cat("\n\n")
}
m2<- summ(m1, exp = T)
kbl(m2)发布于 2020-12-13 23:18:28
您的代码生成以下错误消息:
kbl(m2)
#Error in as.data.frame.default(x) :
# cannot coerce class ‘c("summ.glm", "summ")’ to a data.frame 您的函数kbl()使用来自kableExtra包的kable()函数。根据它的文档(您可以通过运行?kable来检查它),它需要一个R对象,它通常是一个矩阵或数据帧作为输入。如果输入不是一个,则尝试将其强制到一个数据帧中。然而,m2既不是一个矩阵,也不是一个数据帧,它不能被强迫到一个数据帧上,因此它不适合作为kbl()的输入。
如果只想在m2中打印表,可以尝试:
kbl(m2$coeftable)m2$coeftable是一个矩阵,适合作为kbl()的输入。您可以通过is.matrix(m2$coeftable)检查它。
https://stackoverflow.com/questions/65276849
复制相似问题