[R] Switch Help

Colin Millar C.Millar at MARLAB.AC.UK
Wed Nov 18 12:05:47 CET 2009


And if you want to do both do

invisible( lapply(c("scrn","dx"), aar) )

but I think you will have to use multiple ifs rather than switch if you
intend to add more functionality...


.
.
.

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-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
On Behalf Of oscar linares
Sent: 18 November 2009 10:40
To: r-help at 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 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.

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 




More information about the R-help mailing list