Hola Carlos, Muchas gracias por el enlace, me ha sido de gran ayuda. Ya he entendido cómo funciona el sistema S3.
Un saludo, Guillermo > Hola, ¿qué tal? > > Sigue http://www.datanalytics.com/2011/08/04/desarrollo-de-paquetes-con-r-iv-funciones-genericas/ > a rajatabla y lo tendrás. > > Un saludo, > > Carlos J. Gil Bellosta > http://www.datanalytics.com > > P.D.: Si te fijas bien, no estás siguiendo esa guía "a rajatabla". > > El día 23 de julio de 2015, 16:26, <[email protected]> escribió: > > Hola, > > > > Estoy tratando de crear un método S3 llamado "anthr" dentro del paquete > > que estoy desarrollando, cuyo argumento principal es "res" que > > básicamente es una lista con un solo componente. Pero si el segundo > > argumento llamado "oneSize" es FALSE, "res" es una lista de listas. > > > > Lo que he escrito hasta el momento es lo siguiente: > > > > anthr <- function(res, oneSize, nsizes){ > > UseMethod("anthr") > > } > > > > anthr.tri <- function(res, oneSize, nsizes){ > > > > if(oneSize){ > > cases <- c() > > cases <- res$meds > > }else{ > > cases <- list() > > for (i in 1 : (nsizes - 1)){ > > cases[[i]] <- res[[i]]$meds > > } > > } > > return(cases) > > } > > > > El problema cuando instalo el paquete y utilizo este método, es que R no > > me reconoce que "res" sea una lista. En concreto, me aparece este error: > > > > Error in UseMethod("anthr") : > > no applicable method for 'anthr' applied to an object of class "list" > > > > He tratado de añadir esto: > > > > tri <- function(x){ > > value <- list(meds = x$meds) > > attr(value, "class") <- "tri" > > value > > } > > > > pero sigue sin funcionarme. ¿Alguien puede ofrecerme alguna ayuda? . > > > > Muchas gracias de antemano. > > > > Un saludo, > > > > Guillermo > > > > _______________________________________________ > > R-help-es mailing list > > [email protected] > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > _______________________________________________ R-help-es mailing list [email protected] https://stat.ethz.ch/mailman/listinfo/r-help-es
