I think you just missed some commas out... aar <- function(command = c("scrn", "dx", "df")) { command <- match.arg(command) switch(command, scrn = cat("scrn :Screening","\n"), dx = cat("dx :Diagnosis","\n"), df = cat("df :Don't Forget","\n") ) }
Colin. Ps you don't need the curly brackets here if theres only one expresion, and sometimes its good to restrict the inputs to only those you want So that aar("something wrong") # Error in match.arg(command) : 'arg' should be one of "scrn", "dx", "df" -----Original Message----- From: r-help-boun...@r-project.org [mailto:r-help-boun...@r-project.org] On Behalf Of oscar linares Sent: 18 November 2009 10:40 To: r-help@r-project.org Subject: [R] Switch Help Dear Rexperts, Given, aar <-function(command) { switch(command, {scrn = cat("scrn :Screening","\n")} {dx = cat("dx :Diagnosis","\n")} {df = cat("df :Don't Forget","\n")} ) } I want to be able to do: aar("dx") # function does cat("dx :Diagnosis","\n") aar(c("dx","df")) # function does cat("dx :Diagnosis","\n") # function does df = cat("df :Don't Forget","\n") BUT IT IS NOT WORKING FOR ME. Please help:-) -- Oscar Oscar A. Linares, MD Translational Medicine Unit LaPlaisance Bay, Bolles Harbor Monroe, Michigan [[alternative HTML version deleted]] ______________________________________________ R-help@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. ______________________________________________________________________ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email ______________________________________________ R-help@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.