在asreml-R中拟合模型时隐藏信息

时间:2012-05-30 18:30:52

标签: r

我正在使用asreml-R包进行分析。每当我存储一个拟合的模型对象asreml-R时,我会隐藏一些额外的信息。请参阅以下代码和信息:

library(asreml)
dat <- data.frame(y=rnorm(20),x=seq(1,20))
ex.asr <- asreml(y ~ x, data=dat)

asreml(): 3.0.1 Library: 3.01gl IA32  Run: Wed May 30 13:26:44 2012

     LogLik         S2      DF
    -11.3850      0.7691    18  13:26:44
    -11.3850      0.7691    18  13:26:44

Finished on: Wed May 30 13:26:44 2012

LogLikelihood Converged 

如果您帮助隐藏这些额外信息,我将非常感谢。请记住asreml-R不是开源的。感谢

3 个答案:

答案 0 :(得分:4)

使用asreml的控制内容 - asreml.control()函数控制asreml调用的许多方面,你可以直接将其参数提供给asreml调用,在你想要的情况下你想拥有trace=F,所以例如

library(asreml)
dat <- data.frame(y=rnorm(20), x=seq(1,20))
ex.asr <- asreml(y ~ x, data=dat, trace=F)

答案 1 :(得分:2)

如果(看起来像)正在print()编辑的内容,您可以使用capture.output()将其接收到临时文件。

以下是一个例子:

plot(rnorm(99))

capture.output({
    lapply(1:4, function(X) abline(v=20*X))
}, file = tempfile())

## Here's the output that was sunk by `capture.output()`
## (wrapping the call in `suppressMessages()` won't get rid of those "NULL"s)
lapply(1:4, function(X) abline(v=20*x))
[[1]]
NULL

[[2]]
NULL

[[3]]
NULL

[[4]]
NULL

答案 2 :(得分:2)

如果asreml-R设计得很好,那么在命令周围添加suppressMessages()应该可行。否则我会建议

sink("junk.txt")
## asreml command
sink()