如何解决以CSV格式编写回归摘要,包括模型统计信息
问题在于听起来;目前,我使用broom
包整理我的回归摘要,然后使用write_csv
将摘要自然转换为csv。但是,问题在于,此“整理的”摘要不包含有用的统计信息,例如R平方,残差分布和F统计信息的p值。
有人知道如何将回归摘要写到包含此有用信息的csv中吗?
谢谢。
解决方法
一种替代方法是创建一个函数,该函数在list
中存储您需要的所有信息,如下所示:
lm(mpg ~ cyl,mtcars) -> model
model_stats <- function(model) {
data.frame(model = toString(model$call),broom::augment(model)) -> info1
data.frame(model = toString(model$call),broom::tidy(model)) -> info2
data.frame(model = toString(model$call),broom::glance(model)) -> info3
list(info1,info2,info3) -> info_all
return(info_all)
}
out <- model_stats(model)
sapply(seq_along(out),function(i) write.csv(model_stats(model)[[i]],paste0('info',i,'.csv')))
,
我认为,您的问题的核心问题是您不将所有汇总表都作为data.frames或list(通过编译所有信息)来处理,不是吗??
因此,如果您只想在csv中编写特定的统计信息摘要(aov,TukeyHSD,增强,浏览等),则应将其更改为data.frame
“扫帚”小插图中的一些示例:https://cran.r-project.org/web/packages/broom/vignettes/broom.html
glmfit <- glm(am ~ wt,mtcars,family = "binomial")
tidy(glmfit)
fit1 <- as.data.frame(augment(glmfit))
write.csv(fit1,"test.csv")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。