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...@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@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. ______________________________________________ R-help@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.