【问题标题】:R prompting [1] 1 while running a functionR在运行函数时提示[1] 1
【发布时间】:2015-07-07 13:20:57
【问题描述】:

我准备了一个运行良好的相当复杂的 R 函数。但是,每次运行时,R 都会使用以下表达式填充屏幕:

  [1] 1
  [1] 1
  [1] 1
  [1] 1
  [1] 1
  [1] 1

我想知道是否有办法避免 R 的这种提示。这里我可以给你一个函数的例子:

y=function(x){
    results=rep(0, length(x))
    for (i in (1:length(x))) {
          if (x[i]>0) {
                     results[i]=u(x)
                    } 
    }
}

u=function(x){
             output=x+1
             return(output)
}

【问题讨论】:

  • y 不返回任何东西给我。 u 只返回一个值。
  • invisible(output)替换return(output)
  • 你也可以用ifelse替换循环

标签: r prompt


【解决方案1】:

你可以像这样查看sink("NUL")

u(9)
#[1] 10
sink("NUL")
u(9)
sink()
u(9)
#[1] 10

【讨论】:

  • 感谢大家的贡献。我发现了问题所在,它与一些子功能输出有关。
  • 您可以添加自己的解决方案作为答案并接受它
猜你喜欢
  • 1970-01-01
  • 2021-09-16
  • 1970-01-01
  • 1970-01-01
  • 2023-03-16
  • 2017-11-04
  • 1970-01-01
  • 2012-09-02
  • 1970-01-01
相关资源
最近更新 更多