Saludos a todos, Quisiera saber como ocultar algunos componentes de una lista para que cuando crees una funcion solo se muestre una parte de esa lista, y que al resto tengas acceso cuando descompongas ese objeto, por ejemplo: Tengo la siguiente data: data=data.frame(Samples=1:10,Sobs=c(12.6,22.4,27.4,30.5,32.5,34.3,36,37.4,38.9,39.9)) Cuando uso la funcion nls: A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1), data=data) El resultado que me arroja es : Nonlinear regression model model: Sobs ~ A * Samples/(1 + (B * Samples)) data: data A B 19.0918 0.3822 residual sum-of-squares: 3.295 Number of iterations to convergence: 6 Achieved convergence tolerance: 9.867e-06 sin embargo la estructura completa del objeto que produce la funcion "nls" se puede ver con la funcion "str" : str(A) la cual es la siguiente: List of 6 $ m :List of 16 ..$ resid :function () ..$ fitted :function () ..$ formula :function () ..$ deviance :function () ..$ lhs :function () ..$ gradient :function () ..$ conv :function () ..$ incr :function () ..$ setVarying:function (vary = rep(TRUE, length(useParams))) ..$ setPars :function (newPars) ..$ getPars :function () ..$ getAllPars:function () ..$ getEnv :function () ..$ trace :function () ..$ Rmat :function () ..$ predict :function (newdata = list(), qr = FALSE) ..- attr(*, "class")= chr "nlsModel" $ convInfo :List of 5 ..$ isConv : logi TRUE ..$ finIter : int 6 ..$ finTol : num 9.87e-06 ..$ stopCode : int 0 ..$ stopMessage: chr "converged" $ data : symbol data $ call : language nls(formula = Sobs ~ A * Samples/(1 + (B * Samples)), data = data, start = list(A = 5, B = 1), algorithm = "default", control = structure(list(maxiter = 50, tol = 1e-05, ... $ dataClasses: Named chr "numeric" ..- attr(*, "names")= chr "Samples" $ control :List of 5 ..$ maxiter : num 50 ..$ tol : num 1e-05 ..$ minFactor: num 0.000977 ..$ printEval: logi FALSE ..$ warnOnly : logi FALSE - attr(*, "class")= chr "nls" Como se observa muchos de estos elmentos no son mostrados en el resultado de la funcion a menos que se use la funcion "str" , quisiera saber como hacer esto, ocultar algunos elementos de una lista producida por una funcion, pero igual tener acceso a esos elementos cuando se le haga el llamado con la funcion "str". Ademas como hace para que el resultado de su funcion salga de esa manera tan ordenada y no como se lo mostraria una lista (ya que el objeto final es una lista) Les agradesco de antemano por la ayuda Gabriel Antonio Trujillo Paucar Estudiante de Biologia 997603768 [[alternative HTML version deleted]]
Estimado Gabriel Trujillo Paucar Del str en el segundo renglón está fitted. ¿Usted pregunta algo como el siguiente ejemplo? fitted(A) O comprendí mal su pregunta. Javier Marcuzzi El 28 de mayo de 2013 13:25, Gabriel Trujillo Paucar < gabriel_enter@hotmail.com> escribió:> Saludos a todos, > > > > Quisiera saber como ocultar algunos componentes de una lista para que > cuando crees una funcion solo se muestre una parte de esa lista, y que al > resto tengas acceso cuando descompongas ese objeto, por ejemplo: > > > > Tengo la siguiente data: > > > > > data=data.frame(Samples=1:10,Sobs=c(12.6,22.4,27.4,30.5,32.5,34.3,36,37.4,38.9,39.9)) > > > > Cuando uso la funcion nls: > > > > A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1), data=data) > > > > El resultado que me arroja es : > > > > Nonlinear regression model > model: Sobs ~ A * Samples/(1 + (B * Samples)) > data: data > A B > 19.0918 0.3822 > residual sum-of-squares: 3.295 > > Number of iterations to convergence: 6 > Achieved convergence tolerance: 9.867e-06 > > > > sin embargo la estructura completa del objeto que produce la funcion "nls" > se puede ver con la funcion "str" : > > > > str(A) > > > > la cual es la siguiente: > > > > List of 6 > $ m :List of 16 > ..$ resid :function () > ..$ fitted :function () > ..$ formula :function () > ..$ deviance :function () > ..$ lhs :function () > ..$ gradient :function () > ..$ conv :function () > ..$ incr :function () > ..$ setVarying:function (vary = rep(TRUE, length(useParams))) > ..$ setPars :function (newPars) > ..$ getPars :function () > ..$ getAllPars:function () > ..$ getEnv :function () > ..$ trace :function () > ..$ Rmat :function () > ..$ predict :function (newdata = list(), qr = FALSE) > ..- attr(*, "class")= chr "nlsModel" > $ convInfo :List of 5 > ..$ isConv : logi TRUE > ..$ finIter : int 6 > ..$ finTol : num 9.87e-06 > ..$ stopCode : int 0 > ..$ stopMessage: chr "converged" > $ data : symbol data > $ call : language nls(formula = Sobs ~ A * Samples/(1 + (B * > Samples)), data = data, start = list(A = 5, B = 1), algorithm > "default", control = structure(list(maxiter = 50, tol = 1e-05, ... > $ dataClasses: Named chr "numeric" > ..- attr(*, "names")= chr "Samples" > $ control :List of 5 > ..$ maxiter : num 50 > ..$ tol : num 1e-05 > ..$ minFactor: num 0.000977 > ..$ printEval: logi FALSE > ..$ warnOnly : logi FALSE > - attr(*, "class")= chr "nls" > > > > Como se observa muchos de estos elmentos no son mostrados en el resultado > de la funcion a menos que se use la funcion "str" > > , quisiera saber como hacer esto, ocultar algunos elementos de una lista > producida por una funcion, pero igual tener acceso a esos elementos cuando > se le haga el llamado con la funcion "str". Ademas como hace para que el > resultado de su funcion salga de esa manera tan ordenada y no como se lo > mostraria una lista (ya que el objeto final es una lista) > > > > Les agradesco de antemano por la ayuda > > > > > > > > > > Gabriel Antonio Trujillo Paucar > Estudiante de Biologia > 997603768 > > > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >[[alternative HTML version deleted]]
Hola Javier, Creo que comprendio mal mi pregunta, quiero saber como ocultar algunos componentes de una lista producida por una funcion que uno crea, pero que solo esten ocultos y que pueda tener acceso a esos componentes cuando uso la funcion "str", la cual despliega todos los componentes de la lista. Además como hacer para que salga ordenado o de una forma preferida los componentes de la lista arrojada por la funcion y no de la estructura que tendria una lista comun, que suele colocar con [[]] sus componentes como coloque en el ejemplo. No se si se entiende bien mi pregunta Saludos, Gabriel Antonio Trujillo Paucar Estudiante de Biologia 997603768 Date: Tue, 28 May 2013 13:36:04 -0300 Subject: Re: [R-es] Ocultar componentes de una lista From: javier.ruben.marcuzzi@gmail.com To: gabriel_enter@hotmail.com CC: r-help-es@r-project.org Estimado Gabriel Trujillo Paucar Del str en el segundo renglón está fitted. ¿Usted pregunta algo como el siguiente ejemplo? fitted(A) O comprendí mal su pregunta. Javier Marcuzzi El 28 de mayo de 2013 13:25, Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> escribió: Saludos a todos, Quisiera saber como ocultar algunos componentes de una lista para que cuando crees una funcion solo se muestre una parte de esa lista, y que al resto tengas acceso cuando descompongas ese objeto, por ejemplo: Tengo la siguiente data: data=data.frame(Samples=1:10,Sobs=c(12.6,22.4,27.4,30.5,32.5,34.3,36,37.4,38.9,39.9)) Cuando uso la funcion nls: A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1), data=data) El resultado que me arroja es : Nonlinear regression model model: Sobs ~ A * Samples/(1 + (B * Samples)) data: data A B 19.0918 0.3822 residual sum-of-squares: 3.295 Number of iterations to convergence: 6 Achieved convergence tolerance: 9.867e-06 sin embargo la estructura completa del objeto que produce la funcion "nls" se puede ver con la funcion "str" : str(A) la cual es la siguiente: List of 6 $ m :List of 16 ..$ resid :function () ..$ fitted :function () ..$ formula :function () ..$ deviance :function () ..$ lhs :function () ..$ gradient :function () ..$ conv :function () ..$ incr :function () ..$ setVarying:function (vary = rep(TRUE, length(useParams))) ..$ setPars :function (newPars) ..$ getPars :function () ..$ getAllPars:function () ..$ getEnv :function () ..$ trace :function () ..$ Rmat :function () ..$ predict :function (newdata = list(), qr = FALSE) ..- attr(*, "class")= chr "nlsModel" $ convInfo :List of 5 ..$ isConv : logi TRUE ..$ finIter : int 6 ..$ finTol : num 9.87e-06 ..$ stopCode : int 0 ..$ stopMessage: chr "converged" $ data : symbol data $ call : language nls(formula = Sobs ~ A * Samples/(1 + (B * Samples)), data = data, start = list(A = 5, B = 1), algorithm = "default", control = structure(list(maxiter = 50, tol = 1e-05, ... $ dataClasses: Named chr "numeric" ..- attr(*, "names")= chr "Samples" $ control :List of 5 ..$ maxiter : num 50 ..$ tol : num 1e-05 ..$ minFactor: num 0.000977 ..$ printEval: logi FALSE ..$ warnOnly : logi FALSE - attr(*, "class")= chr "nls" Como se observa muchos de estos elmentos no son mostrados en el resultado de la funcion a menos que se use la funcion "str" , quisiera saber como hacer esto, ocultar algunos elementos de una lista producida por una funcion, pero igual tener acceso a esos elementos cuando se le haga el llamado con la funcion "str". Ademas como hace para que el resultado de su funcion salga de esa manera tan ordenada y no como se lo mostraria una lista (ya que el objeto final es una lista) Les agradesco de antemano por la ayuda Gabriel Antonio Trujillo Paucar Estudiante de Biologia 997603768 [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]]
Hola, Gabriel: Si consultas el código de la función nls verás, al final del todo, que hace lo siguiente: class(nls.out) <- "nls" nls.out Ello significa que está indicando que nls.out pertenece a la clase nls, con todo lo que ello conlleva; así pues, la función print de la clase nls será la que se aplique internamente cuando se haga nls.out (es decir, cuando se muestre el objeto). ¿Qué significa ésto?. Significa que nls.out tendrá la totalidad de componentes que le hayamos atribuido (de ahí que el str sea consecuente con ello) pero la manera de mostrarse (el nls.out) dependerá de cómo se haya programado la función print de la clase nls. Conclusión: Realmente no se ocultan componentes, sino que se visualizan aquellos que son de interés, y con la presentación que se elija. A lo mejor me equivoco (por favor, que alguien me corrija) pero creo que tu duda arranca de esta cuestión. Ánimo. Eva --- El mar, 28/5/13, Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> escribió: De: Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> Asunto: [R-es] Ocultar componentes de una lista Para: "r-help-es@r-project.org" <r-help-es@r-project.org> Fecha: martes, 28 de mayo, 2013 18:25 Saludos a todos, Quisiera saber como ocultar algunos componentes de una lista para que cuando crees una funcion solo se muestre una parte de esa lista, y que al resto tengas acceso cuando descompongas ese objeto, por ejemplo: Tengo la siguiente data: data=data.frame(Samples=1:10,Sobs=c(12.6,22.4,27.4,30.5,32.5,34.3,36,37.4,38.9,39.9)) Cuando uso la funcion nls: A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1), data=data) El resultado que me arroja es : Nonlinear regression model model: Sobs ~ A * Samples/(1 + (B * Samples)) data: data A B 19.0918 0.3822 residual sum-of-squares: 3.295 Number of iterations to convergence: 6 Achieved convergence tolerance: 9.867e-06 sin embargo la estructura completa del objeto que produce la funcion "nls" se puede ver con la funcion "str" : str(A) la cual es la siguiente: List of 6 $ m :List of 16 ..$ resid :function () ..$ fitted :function () ..$ formula :function () ..$ deviance :function () ..$ lhs :function () ..$ gradient :function () ..$ conv :function () ..$ incr :function () ..$ setVarying:function (vary = rep(TRUE, length(useParams))) ..$ setPars :function (newPars) ..$ getPars :function () ..$ getAllPars:function () ..$ getEnv :function () ..$ trace :function () ..$ Rmat :function () ..$ predict :function (newdata = list(), qr = FALSE) ..- attr(*, "class")= chr "nlsModel" $ convInfo :List of 5 ..$ isConv : logi TRUE ..$ finIter : int 6 ..$ finTol : num 9.87e-06 ..$ stopCode : int 0 ..$ stopMessage: chr "converged" $ data : symbol data $ call : language nls(formula = Sobs ~ A * Samples/(1 + (B * Samples)), data = data, start = list(A = 5, B = 1), algorithm = "default", control = structure(list(maxiter = 50, tol = 1e-05, ... $ dataClasses: Named chr "numeric" ..- attr(*, "names")= chr "Samples" $ control :List of 5 ..$ maxiter : num 50 ..$ tol : num 1e-05 ..$ minFactor: num 0.000977 ..$ printEval: logi FALSE ..$ warnOnly : logi FALSE - attr(*, "class")= chr "nls" Como se observa muchos de estos elmentos no son mostrados en el resultado de la funcion a menos que se use la funcion "str" , quisiera saber como hacer esto, ocultar algunos elementos de una lista producida por una funcion, pero igual tener acceso a esos elementos cuando se le haga el llamado con la funcion "str". Ademas como hace para que el resultado de su funcion salga de esa manera tan ordenada y no como se lo mostraria una lista (ya que el objeto final es una lista) Les agradesco de antemano por la ayuda Gabriel Antonio Trujillo Paucar Estudiante de Biologia 997603768 [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]]
Hola de nuevo, Gabriel: Como sugerencia, creo que te puede venir bien consultar documentación relativa a Clases S3 (más intuitivas que las S4, entre otras razones por haber nacido antes). Tener claros esos conceptos te puede ayudar a entender código de funciones existentes y, por qué no, a utilizar clases en tu propio código. Cualquier duda, ya sabes... a preguntar!. Saludos. --- El mar, 28/5/13, Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> escribió: De: Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> Asunto: [R-es] Ocultar componentes de una lista Para: "r-help-es@r-project.org" <r-help-es@r-project.org> Fecha: martes, 28 de mayo, 2013 18:25 Saludos a todos, Quisiera saber como ocultar algunos componentes de una lista para que cuando crees una funcion solo se muestre una parte de esa lista, y que al resto tengas acceso cuando descompongas ese objeto, por ejemplo: Tengo la siguiente data: data=data.frame(Samples=1:10,Sobs=c(12.6,22.4,27.4,30.5,32.5,34.3,36,37.4,38.9,39.9)) Cuando uso la funcion nls: A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1), data=data) El resultado que me arroja es : Nonlinear regression model model: Sobs ~ A * Samples/(1 + (B * Samples)) data: data A B 19.0918 0.3822 residual sum-of-squares: 3.295 Number of iterations to convergence: 6 Achieved convergence tolerance: 9.867e-06 sin embargo la estructura completa del objeto que produce la funcion "nls" se puede ver con la funcion "str" : str(A) la cual es la siguiente: List of 6 $ m :List of 16 ..$ resid :function () ..$ fitted :function () ..$ formula :function () ..$ deviance :function () ..$ lhs :function () ..$ gradient :function () ..$ conv :function () ..$ incr :function () ..$ setVarying:function (vary = rep(TRUE, length(useParams))) ..$ setPars :function (newPars) ..$ getPars :function () ..$ getAllPars:function () ..$ getEnv :function () ..$ trace :function () ..$ Rmat :function () ..$ predict :function (newdata = list(), qr = FALSE) ..- attr(*, "class")= chr "nlsModel" $ convInfo :List of 5 ..$ isConv : logi TRUE ..$ finIter : int 6 ..$ finTol : num 9.87e-06 ..$ stopCode : int 0 ..$ stopMessage: chr "converged" $ data : symbol data $ call : language nls(formula = Sobs ~ A * Samples/(1 + (B * Samples)), data = data, start = list(A = 5, B = 1), algorithm = "default", control = structure(list(maxiter = 50, tol = 1e-05, ... $ dataClasses: Named chr "numeric" ..- attr(*, "names")= chr "Samples" $ control :List of 5 ..$ maxiter : num 50 ..$ tol : num 1e-05 ..$ minFactor: num 0.000977 ..$ printEval: logi FALSE ..$ warnOnly : logi FALSE - attr(*, "class")= chr "nls" Como se observa muchos de estos elmentos no son mostrados en el resultado de la funcion a menos que se use la funcion "str" , quisiera saber como hacer esto, ocultar algunos elementos de una lista producida por una funcion, pero igual tener acceso a esos elementos cuando se le haga el llamado con la funcion "str". Ademas como hace para que el resultado de su funcion salga de esa manera tan ordenada y no como se lo mostraria una lista (ya que el objeto final es una lista) Les agradesco de antemano por la ayuda Gabriel Antonio Trujillo Paucar Estudiante de Biologia 997603768 [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]]
Perdón por el goteo. Gabriel, aquí tienes el código de nls: http://svn.r-project.org/R/trunk/src/library/stats/R/nls.R Si buscas "print.nls" verás que corresponde al modo en que se muestra el objeto que retorna la función. En definitiva: Tú cuando creas una función, el objeto que retornas se va a mostrar completamente salvo que exista una función print en la clase a la cual pertenece el objeto, en cuyo caso el modo de mostrarse se regirá por dicha función. Cuando entiendas el concepto de clase y lo que ello implica en cuanto a funciones print, plot, etc. ésto te parecerá muy simple. Saludos. Eva --- El mar, 28/5/13, Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> escribió: De: Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> Asunto: [R-es] Ocultar componentes de una lista Para: "r-help-es@r-project.org" <r-help-es@r-project.org> Fecha: martes, 28 de mayo, 2013 18:25 Saludos a todos, Quisiera saber como ocultar algunos componentes de una lista para que cuando crees una funcion solo se muestre una parte de esa lista, y que al resto tengas acceso cuando descompongas ese objeto, por ejemplo: Tengo la siguiente data: data=data.frame(Samples=1:10,Sobs=c(12.6,22.4,27.4,30.5,32.5,34.3,36,37.4,38.9,39.9)) Cuando uso la funcion nls: A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1), data=data) El resultado que me arroja es : Nonlinear regression model model: Sobs ~ A * Samples/(1 + (B * Samples)) data: data A B 19.0918 0.3822 residual sum-of-squares: 3.295 Number of iterations to convergence: 6 Achieved convergence tolerance: 9.867e-06 sin embargo la estructura completa del objeto que produce la funcion "nls" se puede ver con la funcion "str" : str(A) la cual es la siguiente: List of 6 $ m :List of 16 ..$ resid :function () ..$ fitted :function () ..$ formula :function () ..$ deviance :function () ..$ lhs :function () ..$ gradient :function () ..$ conv :function () ..$ incr :function () ..$ setVarying:function (vary = rep(TRUE, length(useParams))) ..$ setPars :function (newPars) ..$ getPars :function () ..$ getAllPars:function () ..$ getEnv :function () ..$ trace :function () ..$ Rmat :function () ..$ predict :function (newdata = list(), qr = FALSE) ..- attr(*, "class")= chr "nlsModel" $ convInfo :List of 5 ..$ isConv : logi TRUE ..$ finIter : int 6 ..$ finTol : num 9.87e-06 ..$ stopCode : int 0 ..$ stopMessage: chr "converged" $ data : symbol data $ call : language nls(formula = Sobs ~ A * Samples/(1 + (B * Samples)), data = data, start = list(A = 5, B = 1), algorithm = "default", control = structure(list(maxiter = 50, tol = 1e-05, ... $ dataClasses: Named chr "numeric" ..- attr(*, "names")= chr "Samples" $ control :List of 5 ..$ maxiter : num 50 ..$ tol : num 1e-05 ..$ minFactor: num 0.000977 ..$ printEval: logi FALSE ..$ warnOnly : logi FALSE - attr(*, "class")= chr "nls" Como se observa muchos de estos elmentos no son mostrados en el resultado de la funcion a menos que se use la funcion "str" , quisiera saber como hacer esto, ocultar algunos elementos de una lista producida por una funcion, pero igual tener acceso a esos elementos cuando se le haga el llamado con la funcion "str". Ademas como hace para que el resultado de su funcion salga de esa manera tan ordenada y no como se lo mostraria una lista (ya que el objeto final es una lista) Les agradesco de antemano por la ayuda Gabriel Antonio Trujillo Paucar Estudiante de Biologia 997603768 [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]]
Hola Eva, Gracias por la respuesta fue de mucha ayuda. Lo que me gustaria saber es por que solo algunas funciones que usan el metodo S3 son visibles en su estructura con la funcion "body". Por ejemplo si coloco body(print.ts) Me va a salir la estructura de esa funcion, sin embargo si coloco body(print.nls) Me sale el siguiente mensaje :Error in body(print.nls) : object 'print.nls' not found A pesar de que esa funcion tambien existe, ya que la encuentras cuando colocas methods(print) solo que con un asterisco al costado diciendo que so son visibles. ¿Sabes por que es esto? La manera a la cual pude observar la estructura de la funcion "print.nls" fue de la forma en la que Carlos me habia escrito anteriormente: getAnywhere(print.nls) Esa es una de las dudas que tengo Gabriel Antonio Trujillo Paucar Estudiante de Biologia 997603768 Date: Tue, 28 May 2013 20:49:26 +0100 From: evapcastro@yahoo.es Subject: Re: [R-es] Ocultar componentes de una lista To: r-help-es@r-project.org; gabriel_enter@hotmail.com Perdón por el goteo. Gabriel, aquí tienes el código de nls: http://svn.r-project.org/R/trunk/src/library/stats/R/nls.R Si buscas "print.nls" verás que corresponde al modo en que se muestra el objeto que retorna la función. En definitiva: Tú cuando creas una función, el objeto que retornas se va a mostrar completamente salvo que exista una función print en la clase a la cual pertenece el objeto, en cuyo caso el modo de mostrarse se regirá por dicha función. Cuando entiendas el concepto de clase y lo que ello implica en cuanto a funciones print, plot, etc. ésto te parecerá muy simple. Saludos. Eva --- El mar, 28/5/13, Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> escribió: De: Gabriel Trujillo Paucar <gabriel_enter@hotmail.com> Asunto: [R-es] Ocultar componentes de una lista Para: "r-help-es@r-project.org" <r-help-es@r-project.org> Fecha: martes, 28 de mayo, 2013 18:25 Saludos a todos, Quisiera saber como ocultar algunos componentes de una lista para que cuando crees una funcion solo se muestre una parte de esa lista, y que al resto tengas acceso cuando descompongas ese objeto, por ejemplo: Tengo la siguiente data: data=data.frame(Samples=1:10,Sobs=c(12.6,22.4,27.4,30.5,32.5,34.3,36,37.4,38.9,39.9)) Cuando uso la funcion nls: A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1), data=data) El resultado que me arroja es : Nonlinear regression model model: Sobs ~ A * Samples/(1 + (B * Samples)) data: data A B 19.0918 0.3822 residual sum-of-squares: 3.295 Number of iterations to convergence: 6 Achieved convergence tolerance: 9.867e-06 sin embargo la estructura completa del objeto que produce la funcion "nls" se puede ver con la funcion "str" : str(A) la cual es la siguiente: List of 6 $ m :List of 16 ..$ resid :function () ..$ fitted :function () ..$ formula :function () ..$ deviance :function () ..$ lhs :function () ..$ gradient :function () ..$ conv :function () ..$ incr :function () ..$ setVarying:function (vary = rep(TRUE, length(useParams))) ..$ setPars :function (newPars) ..$ getPars :function () ..$ getAllPars:function () ..$ getEnv :function () ..$ trace :function () ..$ Rmat :function () ..$ predict :function (newdata = list(), qr = FALSE) ..- attr(*, "class")= chr "nlsModel" $ convInfo :List of 5 ..$ isConv : logi TRUE ..$ finIter : int 6 ..$ finTol : num 9.87e-06 ..$ stopCode : int 0 ..$ stopMessage: chr "converged" $ data : symbol data $ call : language nls(formula = Sobs ~ A * Samples/(1 + (B * Samples)), data = data, start = list(A = 5, B = 1), algorithm = "default", control = structure(list(maxiter = 50, tol = 1e-05, ... $ dataClasses: Named chr "numeric" ..- attr(*, "names")= chr "Samples" $ control :List of 5 ..$ maxiter : num 50 ..$ tol : num 1e-05 ..$ minFactor: num 0.000977 ..$ printEval: logi FALSE ..$ warnOnly : logi FALSE - attr(*, "class")= chr "nls" Como se observa muchos de estos elmentos no son mostrados en el resultado de la funcion a menos que se use la funcion "str" , quisiera saber como hacer esto, ocultar algunos elementos de una lista producida por una funcion, pero igual tener acceso a esos elementos cuando se le haga el llamado con la funcion "str". Ademas como hace para que el resultado de su funcion salga de esa manera tan ordenada y no como se lo mostraria una lista (ya que el objeto final es una lista) Les agradesco de antemano por la ayuda Gabriel Antonio Trujillo Paucar Estudiante de Biologia 997603768 [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]]