R语言Greg包输出结果行被截断 如何设置显示全部行
Greg包OR汇总结果输出截断的解决方法
Greg包计算未调整/调整OR的核心输出函数是printCrudeAndAdjustedModel(),结果末尾字段/行被截断是默认参数限制导致的,按下面的方法调整即可:
1. 直接修改函数打印参数(最简便)
这个函数本身自带行数、宽度控制参数,调用时直接传参就能解除限制:
n_row_limit:控制最大显示行数,默认值为20,超过就会截断,设置为Inf即可完全取消行数限制width:控制单行列数,默认跟随当前控制台宽度,设置为Inf可避免长变量名、长置信区间被折行截断
示例代码:
library(Greg) # 按常规流程拟合未调整、调整后的logistic回归模型 crude_fit <- glm(y ~ exposure, data = your_df, family = binomial) adj_fit <- glm(y ~ exposure + age + gender + bmi + smoke, data = your_df, family = binomial) # 输出时传参解除限制 printCrudeAndAdjustedModel(crude_fit, adj_fit, n_row_limit = Inf, width = Inf)
2. 修改R全局打印阈值
如果改完函数参数仍有截断,是R控制台本身的全局打印上限导致的,在运行输出代码前先执行以下全局设置即可:
# 取消控制台打印的行数上限 options(max.print = .Machine$integer.max) # 调大控制台单行列宽,适配长内容 options(width = 200)
3. 导出结果到本地文件(变量数较多时推荐)
如果纳入的协变量超过30个,控制台浏览本身不方便,可以直接把结果存为数据框导出为本地文件,完全不会有截断:
# 注意必须加return_data = TRUE,才能返回可操作的表格对象 or_result <- printCrudeAndAdjustedModel(crude_fit, adj_fit, n_row_limit = Inf, return_data = TRUE) # 导出为csv文件,可直接用Excel打开查看所有字段 write.csv(or_result, "未调整与调整OR汇总表.csv", fileEncoding = "UTF-8", row.names = FALSE)
如果是在R Markdown/Quarto文档中渲染出现截断,把返回的or_result对象传给knitr::kable()渲染即可自动适配文档宽度,不会出现内容截断。
内容的提问来源于stack exchange,提问作者db2020
相关产品推荐
相关产品推荐

