如何在R Markdown中仅展示car包influencePlot绘图而非返回的数据框
解决R Markdown中influencePlot输出数据框的问题
要让PDF里只显示influencePlot的绘图、不附带返回的数据框,核心是抑制函数返回值的自动打印,以下两种方法都能解决:
方法1:将返回值赋值给变量
把influencePlot的结果存到一个变量里,R Markdown就不会自动打印这个数据框,同时绘图会正常生成:library(car) # 先拟合模型(单独提出来更清晰) lm_fit <- lm(prestige ~ income + education, data=Duncan) # 把influencePlot的返回数据存到变量,不打印 inf_data <- influencePlot(lm_fit)后续如果需要查看异常点的数据,直接调用
inf_data即可,不会影响PDF输出。方法2:用invisible()包裹函数调用
如果不需要保留返回的数据,直接用invisible()强制隐藏返回值的打印:library(car) invisible(influencePlot(lm(prestige ~ income + education, data=Duncan)))
为什么之前的方法无效?
id=list(method="identify")是交互式点选功能,仅适用于RStudio这类交互式环境,生成PDF时是非交互式渲染,既没法手动选点,也解决不了数据框输出的问题。- 加
[2]没用是因为influencePlot的返回值本身就是包含异常点统计量的数据框,不存在第二个元素可以提取。
内容的提问来源于stack exchange,提问作者lawyeR
相关产品推荐
相关产品推荐

