在R语言中如何将控制台输出重定向至数据框?求可用函数
R语言中将控制台输出转为数据框的实用函数
针对你提到的mgcv包中gam.check()这类控制台输出转数据框的需求,以下是几个高效的函数/工具:
capture.output():R基础包自带函数,能直接捕获控制台输出的文本内容。捕获后可结合read.table()、readLines()等工具解析文本,将结构化的表格部分转为数据框,无需写入本地文件。broom系列工具:broom包的tidy()、glance()、augment()函数可将很多模型相关的输出转为整洁数据框;针对mgcv的模型,broom.mgcv扩展包做了专门适配,能更精准地提取GAM模型及诊断的结构化数据。- 提取函数返回的隐藏对象:部分函数(包括
gam.check())在打印控制台输出的同时,会返回一个不可见的结构化对象。可以尝试用res <- gam.check(gamout, type=c("deviance"))获取这个对象,其中可能包含你需要的收敛情况、秩检查等数据,直接就能处理成数据框。
内容的提问来源于stack exchange,提问作者KodiakMFL
相关产品推荐
相关产品推荐

