[R] For is.numeric condition in user input

Bansal, Vikas vikas.bansal at kcl.ac.uk
Mon Jul 25 13:49:14 CEST 2011


Thanks for your reply.I know readline will give me a character.But if I will do something like this-


> readnumber<- function()
>  {
> for(j in 1:10){
>  value=readline("enter the threshold for number of reads: ")
> value=as.numeric(value)
>  if(is.numeric(value)==T)
> {return(value)
> break}
> else
> print("wrong number Please enter numerical value ")}
>
>  }

if i will change value as numeric and if now user will input a character like a or b rather than a number like 4 or 5 or 6,then my code is not showing message-
wrong number Please enter numerical value

That is why I am confused now-I have tried with- value=as.numeric(value)
and without this also.But did not find any solution.


Thanking you,
Warm Regards
Vikas Bansal
Msc Bioinformatics
Kings College London
________________________________________
From: Smart Guy [smartguy3k at gmail.com]
Sent: Monday, July 25, 2011 6:39 AM
To: Ista Zahn
Cc: Bansal, Vikas; r-help at r-project.org
Subject: Re: [R] For is.numeric condition in user input

Yes, thats right, readline will give you character and now you need to convert it to numeric to make it work.

Thanks
SmartG

On 25 July 2011 08:51, Ista Zahn <izahn at psych.rochester.edu<mailto:izahn at psych.rochester.edu>> wrote:
readline always returns a character. See ?readline for details.

Best,
Ista

On Sun, Jul 24, 2011 at 10:59 PM, Bansal, Vikas <vikas.bansal at kcl.ac.uk<mailto:vikas.bansal at kcl.ac.uk>> wrote:
> Dear all,
>
> I am using the following function so that user can input a numerical value.
>
> readnumber<- function()
>  {
> for(j in 1:10){
>  value=readline("enter the threshold for number of reads: ")
>  if(is.numeric(value)==T)
> {return(value)
> break}
> else
> print("wrong number Please enter numerical value ")}
>
>  }
>
> But if by chance user tries to put character it will show the message-
>  wrong number Please enter numerical value
>
> now when I am calling this function and entering numerical value,then also it is showing the message-wrong number Please enter numerical value
>
> Can you please tell me what mistake I am doing?
>
>
>
>
>
>
>
> Thanking you,
> Warm Regards
> Vikas Bansal
> Msc Bioinformatics
> Kings College London
> ______________________________________________
> R-help at r-project.org<mailto:R-help at r-project.org> mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>



--
Ista Zahn
Graduate student
University of Rochester
Department of Clinical and Social Psychology
http://yourpsyche.org

______________________________________________
R-help at r-project.org<mailto:R-help at r-project.org> mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



--
SmartG



More information about the R-help mailing list