【问题标题】:(console) user interaction in R?(控制台)R中的用户交互?
【发布时间】:2011-04-13 09:55:12
【问题描述】:

我相信你们都知道在回归对象上执行绘图命令时“点击返回以显示下一个绘图”语句。我想知道如何在 R 中自己进行这种交互。 我在邮件列表上找到了几篇文章,但没有什么真正全面的。其中大部分内容涉及 menu() 和不同的操作系统 GUI。我只是想创建类似的东西:

 Please enter sample size n: 
 > 1000

 #execution of
 rnorm(1000)

可能我只是错过了文档的某些部分,根本找不到合适的词来谷歌...

【问题讨论】:

    标签: r console interaction


    【解决方案1】:

    不是readLines,而是readline

    n <- as.integer(readline(prompt = "Please enter sample size > "))
    

    一个稍微花哨的实现:

    read_value <- function(prompt_text = "", prompt_suffix = getOption("prompt"), coerce_to = "character")
    {
      prompt <- paste(prompt_text, prompt_suffix)
      as(readline(prompt), coerce_to)
    } 
    
    read_value("Please enter sample size", coerce_to = "integer")
    

    【讨论】:

    • 对于“单击或按 ENTER 进入下一页”行为,请使用 devAskNewPage(TRUE)
    【解决方案2】:

    你可以使用readLines,但我相信还有其他方法……

    ask = function( prompt ) {
        cat( paste( prompt, ':' ) )
        readLines( n=1 )
    }
    
    n = as.integer( ask( 'Please enter sample size n' ) )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-21
      • 2015-09-08
      • 1970-01-01
      • 1970-01-01
      • 2012-06-24
      • 2013-03-29
      • 1970-01-01
      • 2010-09-21
      相关资源
      最近更新 更多