2010-03-29 188 views
5

例如,如果我需要用户指定一个矩阵的行和列的数目:如何让使用R的用户有多个输入?

PROMPT:[若干]

我需要:行?:

用户输入数R'等待'输入。然后将[数字]保存到变量v1中。接着,

PROMPT:列数?:

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

另外保存[另一个数值]代入变量V2。最后,我将有两个变量(v1,v2)用于代码的其余部分。

“readline”只适用于一次输入。我无法将两条线一起运行

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

任何想法或建议吗?

预先感谢您

回答

5

您可以将这些报表合并成一个条款:

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

或者一般,使它们成为一个功能:

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

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

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

检查this page更多..

相关问题