[R] Please, remind a function name

Gabor Grothendieck ggrothendieck at gmail.com
Tue May 22 18:59:35 CEST 2007


You could use the class dispatching mechanism:


mymodel <- function(a, b, method = "S") {
	.Class <- method
	NextMethod("mymodel")
}

mymodel.S <- function(a, b, method = "S") cat("S:", a, b, method, "\n")
mymodel.HK <- function(a, b, method = "S") cat("HK:", a, b, method, "\n")

mymodel(1:3, 1:4)
mymodel(1:3, 1:4, "S")
mymodel(1:3, 1:4, "HK")



On 5/22/07, Vladimir Eremeev <wl2776 at gmail.com> wrote:
>
> Sorry, I'm stuck. :)
>
> I am writing a function, which would fit either one linear model or another
> one, depending on its argument model.type.
> And I don't want to use several if's, because R allows doing it with much
> more beauty.
>
> That is I am looking for prettier alternative to the following
>
> AB2C<-function(a,b,model.type="S") { # or HK, and return NULL if this
> argument has any other value
> [ do some stuff]
>
>  if(model.type=="S") model<-lm( [s.model formula] )
>  else if (model.type == "HK") model<-lm([hk.model formula])
>  else model<-NULL
>
>  return(model)
> }
>
> I was looking at "switch", but didn't come to solution. Sorry <:)
>
> --
> View this message in context: http://www.nabble.com/Please%2C-remind-a-function-name-tf3797444.html#a10741597
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help at stat.math.ethz.ch 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.
>



More information about the R-help mailing list