Dear Bert,
Thanks...I went through the doc pages but couldn't glean
from that that for numeric options one has to backtick it. I is not given in the
doc page...I actually had hundreds of different choices and so cannot depend on
evaluation by position...Thanks again...I got to know that 2 is not a valid
identifier but`2` is!
Yours sincerely,
AKSHAY M KULKARNI
________________________________
From: Bert Gunter <bgunter.4567 at gmail.com>
Sent: Thursday, September 8, 2022 12:39 AM
To: akshay kulkarni <akshay_e4 at hotmail.com>
Cc: R help Mailing list <r-help at r-project.org>
Subject: Re: [R] inconsistency in switch statements.....
Well, as it states on the Help page, which should always be the first
place to look for, ummm, help:
"If the value of EXPR is not a character string it is coerced to
integer. Note that this also happens for factors, with a warning, as
typically the character level is meant. If the integer is between 1
and nargs()-1 then the corresponding element of ... is evaluated and
the result returned: thus if the first argument is 3 then the fourth
argument is evaluated and returned."
So following up on Bill's comment, the arguments do not even need to
be names when Stst evaluates to) an integer:
> Stst <- 2
> switch(Stst, print("NO"), print("YES"))
[1] "YES"
Cheers,
Bert
On Wed, Sep 7, 2022 at 11:35 AM akshay kulkarni <akshay_e4 at hotmail.com>
wrote:>
> Dear members,
> The following is my code:
>
> > Stst <- 2
> > switch(Stst, 1 = print("NO"), 2 = print("YES"))
> Error: unexpected '=' in "switch(Stst, 1 ="
>
> Why isn't it printing "YES" on to the console?
>
> many thanks in advance.
>
> Thanking you,
> Yours sincerely,
> AKSHAY M KULKARNI
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.
[[alternative HTML version deleted]]