r - 用户在 R 中输入变量的 UI
问题描述
我有一系列变量数值和布尔值,我希望用户在运行脚本时输入它们。变量x
,y
和z
使用默认值定义:
x = 25
y = 1.2
z = TRUE
并且变量在脚本中使用。
是否有一个具有显示一个对话框和输入功能的包x
,y
然后z
继续运行代码。
但是,我尝试过svDialogs
,每个对话框都有一个输入。
任何帮助表示赞赏。
解决方案
因此,如果控制台输入(由用户)就足够了,您可以尝试以下方式:
x.input <- readline("Please provide x (just hit ENTER to keep default: ")
if (x.input != "" && is.numeric(x.input)) x <- x.input
对其他两个重复并冲洗...(对于 z with ... && is.logical(z.input)
- 请记住,这NA
也是logical
(以防您还需要检查它作为潜在输入)并且您的代码应该从那里继续滚动。在它之上您可以检查用户的功能退出...
x.input <- readline("Please provide x (press ENTER to keep default or X to exit): ")
if (x.input != "" && is.numeric(x.input)) x <- x.input
if (x.input == "X") return("Function exit by user!")
我与一些 R noob 同事做过类似的事情,通常只需向他们解释一次就足够了,或者让他们意识到需要在他们点击运行时/之后阅读控制台消息。
推荐阅读
- python - 使用 Flatten layer 解决 Concatenate 错误
- geocoding - 地理编码地理熊猫
- sql - Alwayson 集群的节点是否会相互影响?
- regex - 正则表达式模式中的最小字母约束以及特殊字符
- javascript - yyyy-mm-dd HH:mm:ss 格式的 Javascript 现在日期 (UTC)
- python - 将列表转换为字符串列表
- events - AMP 触发操作日志`[Action] "DIV.show" 未列入白名单 []。`
- mongodb - 有人可以向我解释如何以及在哪里使用 mongorestore 吗?
- java - Android Studio - 录制视频并使用 VideoView 观看视频
- javascript - 如何在反应中从变量中的fetch调用中访问值