【问题标题】:How to allow multiple inputs from user using R?如何允许用户使用 R 进行多个输入?
【发布时间】:2010-03-29 18:16:46
【问题描述】:

例如,如果我需要用户指定矩阵的行数和列数:

提示:行数?:

用户输入:[一个数字]

我需要 R '等待'输入。然后将 [a number] 保存到变量 v1 中。接下来,

提示:列数?:

用户输入:[另一个数字]

还将 [另一个数字] 保存到变量 v2 中。最后,我将有两个变量 (v1, v2) 将在其余代码中使用。

"readline" 一次只适用于一个输入。我不能同时运行这两条线

v1 <- readline("Number of rows?: ")
v2 <- readline("Number of columns?: ")

有什么想法或建议吗?

提前谢谢你

【问题讨论】:

    标签: r user-input


    【解决方案1】:

    您可以将这些语句组合成一个子句:

    { v1 <- readline("Number of rows?: "); v2 <- readline("Number of columns?: ") }
    

    或者一般来说,把它们变成一个函数:

    readlines <- function(...) {
       lapply(list(...), readline)
    }
    readlines("Number of rows?: ", "Number of columns?: ")
    

    【讨论】:

      【解决方案2】:

      您可能会发现 tcltk 包中的 tkentry 函数很有用(更多示例请参见 here)。 svDialogs 包中还有一个guiDlg 函数

      library(svDialogs)
      display(guiDlg("SciViews-R", "My first dialog box with SciViews-R"))
      

      查看this page了解更多信息..

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-20
        • 2010-10-10
        • 2014-11-12
        • 2021-04-18
        • 1970-01-01
        相关资源
        最近更新 更多