我有一个脚本,在该脚本中,我正在运行一个来自包的命令:来自 ensembldb 包的 proteinToGenome()。
我使用for () {}
结构迭代地运行命令,并且在每次迭代时,它将返回更多的“进度”消息,无论命令的成功/失败如何输出,而不是警告消息:
Checking CDS and protein sequence lengths ... 1/1 OK
Fetching CDS for 1 proteins ... 1 found
或者:
Fetching CDS for 1 proteins ... 1 found
Checking CDS and protein sequence lengths ... 0/0 OK
如何抑制这些消息?我发现的其他问题似乎不适用于这些问题,他们的解决方案似乎也无法阻止这些问题。我已经尝试了以下所有解决方案:
我累了:
capture.output(for (x in length(DF)) {
OutputDF <- function(DF[x])
})
和:
sink(for (x in length(DF)) {
OutputDF <- function(DF[x])
})
也试过:
hush=function(code){
sink("NUL") # use /dev/null in UNIX
tmp = code
sink()
return(tmp)
}
hush(for (x in length(DF)) {
OutputDF <- function(DF[x])
})
另外,我使用 for 和 not 的原因lapply()
是因为我检查了是否为空,并在循环OutputDF
中使用if(){}else{}
命令相应地采取措施for(){}