如何抑制causalTree函数运行时在控制台的输出内容?
解决causalTree函数控制台多余输出的方法
方法一:用
invisible()包裹函数调用
这个方法能抑制函数返回结果的自动打印,适配多数R函数,修改后的代码如下:tree <- invisible(causalTree(y ~ ., data = data.frame(y, X), treatment = D, split.Rule = "CT", cv.option = "CT", split.Honest = T, cv.Honest = T, split.Bucket = F, xval = 5, cp = 0, minsize = 20, propensity = 0.5))方法二:用
capture.output()捕获输出
如果invisible()无效(比如函数内部有强制的print/cat语句),可以用这个函数把所有输出捕获后丢弃,不显示在控制台:capture.output( tree <- causalTree(y ~ ., data = data.frame(y, X), treatment = D, split.Rule = "CT", cv.option = "CT", split.Honest = T, cv.Honest = T, split.Bucket = F, xval = 5, cp = 0, minsize = 20, propensity = 0.5), file = NULL )参数
file = NULL表示仅捕获输出但不保存到文件,直接忽略这些内容。
注:这些多余输出是causalTree函数内部的状态提示语句,目前官方没有提供专门的开关参数关闭,上述两种通用方法可以解决问题。
内容的提问来源于stack exchange,提问作者riccardo-df
相关产品推荐
相关产品推荐

