楼主: 超级大菜鸟
20155 7

[问答] 请教readline()函数的用法 [推广有奖]

  • 7关注
  • 1粉丝

已卖:113份资源

硕士生

86%

还不是VIP/贵宾

-

威望
0
论坛币
224 个
通用积分
2.1000
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
2159 点
帖子
78
精华
0
在线时间
267 小时
注册时间
2011-7-20
最后登录
2025-3-30

楼主
超级大菜鸟 发表于 2015-7-15 10:21:30 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
[size=14.2857141494751px]请教大家readline()函数的用法,我理解的readline()函数可以实现交互式的输入,即a<-as.numeric(readline("请输入a参数的值:")),这样直接在控制台中输入是没有问题的。但是如果我想写一段脚本代码,问题就来了,a<-as.numeric(readline("请输入a参数的值:"))这行代码的下一行代码就会作为a<-as.numeric(readline("请输入a参数的值:"))的输入值,这并不是我想要的。
[size=14.2857141494751px]再举个例子:
[size=14.2857141494751px]我在脚本文件中使用readline来提醒别人输入想要设置的a,b,c参数的值,所以我用了下面的代码:
  1. a<-as.numeric(readline("请输入a参数的值:"))
  2. b<-as.numeric(readline("请输入b参数的值:"))
  3. ​c<-as.numeric(readline("请输入c参数的值:"))
复制代码

[size=14.2857141494751px]但是在运行的时候就会出现问题
[size=14.2857141494751px]b<-as.numeric(readline("请输入b参数的值:"))会被R认为是a<-as.numeric(readline("请输入a参数的值:"))的输入值。
[size=14.2857141494751px]请问这个问题如何解决?或者能否教我一个实现我的这个想法的办法?谢谢大家
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:line READ EAD ADL Lin

沙发
635515699 发表于 2015-7-15 14:11:23
我也没做过开发,R是我自己在自学,你看你试试如果把你想提醒别人设置的参数值放到一个函数里,直接运行一个函数行吗

藤椅
超级大菜鸟 发表于 2015-7-15 14:28:19
635515699 发表于 2015-7-15 14:11
我也没做过开发,R是我自己在自学,你看你试试如果把你想提醒别人设置的参数值放到一个函数里,直接运行一个 ...
放在一个函数里面是可以的,我还想知道readline()到底有什么实际作用。我也是在自学R,就是觉得很多东西都搞不懂,哎。

板凳
超级大菜鸟 发表于 2015-7-15 22:47:26
自己顶一下,请大家  帮忙!

报纸
超级大菜鸟 发表于 2015-7-15 22:48:39
自己顶一下,请大家帮忙!

地板
马甲1号 发表于 2015-8-7 14:05:08
可以通过gui窗口获得输入.
参考: http://stackoverflow.com/questions/11311747/add-a-popup-text-box-within-an-r-script-using-tcltk

require(gWidgets)
options(guiToolkit="tcltk")
NameVal <- ginput("Enter your passsword:")
或者如果希望界面更漂亮, 可以试试shiny, 直接在web浏览器中输入数据, 但开发相对麻烦些.

7
万卷书万里路 发表于 2016-6-9 21:36:18
你试试这样行不  (a<-as.numeric(readline("请输入a参数的值:")))

8
mercuro 学生认证  发表于 2016-10-17 22:20:42
把你的语句写到name.R文件,配合source("name.R")用,应该能出你想要的结果

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 22:09