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, ¿qué tal? Si haces primero 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)) A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1), data=data) y luego escribes A lo que ves en pantalla es lo mismo que si hubieses escrito print(A). Tu objeto A es de la clase "nls". Por lo tanto, la función print a la que llamas es print.nls (dentro de las opciones que muestra methods(print)). Si escribes getAnywhere(print.nls) verás el código de dicha función, cuáles de los componentes de A muestra y de qué manera. Un saludo, Carlos J. Gil Bellosta http://www.datanalytics.com El día 28 de mayo de 2013 19:06, Gabriel Trujillo Paucar <gabriel_enter en hotmail.com> escribió:> 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 en gmail.com > To: gabriel_enter en hotmail.com > CC: r-help-es en 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 en 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 en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >
Estimado Gabriel
Por su respuesta y el aporte de Carlos Gil Bellosta, creo que por lo que sale
en:
getAnywhere(print.nls)
Por lo que usted dice de una función.
Yo escribiría dos funciones, suponiendo que en la primera solo solicito
fitted(A) y en la segunda fitted(A) más otras cosas.
Entonces cuándo quiero el listado completo ejecuto la segunda función, y en el
caso de necesitar que algo quede oculto, utilizo la primer función.
Javier Marcuzzi
From: Gabriel Trujillo Paucar 
Sent: Tuesday, May 28, 2013 2:06 PM
To: Javier Marcuzzi 
Cc: r-help-es@r-project.org 
Subject: RE: [R-es] Ocultar componentes de una lista
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 Carlos,
 
Gracias, fue de mucha ayuda pero porque cuando veo la estructura de la funcion
"nls" con la funcion "body", en la parte final tiene:
 
......
 if (model) 
        nls.out$model <- mf
    if (!mWeights) 
        nls.out$weights <- wts
    nls.out$control <- control
    class(nls.out) <- "nls"
    nls.out
}
Se coloca el objeto nls.out al final y no se usa la funcion "print"
que me mostraste
 
Saludos
Gabriel Antonio Trujillo Paucar
Estudiante de Biologia
     997603768
 
 
> Date: Tue, 28 May 2013 19:12:43 +0200
> Subject: Re: [R-es] Ocultar componentes de una lista
> From: cgb@datanalytics.com
> To: gabriel_enter@hotmail.com
> CC: javier.ruben.marcuzzi@gmail.com; r-help-es@r-project.org
> 
> Hola, ¿qué tal?
> 
> Si haces primero
> 
> 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))
> A <- nls(Sobs~A*Samples/(1+(B*Samples)), start=list(A=5, B=1),
data=data)
> 
> y luego escribes
> 
> A
> 
> lo que ves en pantalla es lo mismo que si hubieses escrito
> 
> print(A).
> 
> Tu objeto A es de la clase "nls". Por lo tanto, la función print
a la
> que llamas es print.nls (dentro de las opciones que muestra
> methods(print)). Si escribes
> 
> getAnywhere(print.nls)
> 
> verás el código de dicha función, cuáles de los componentes de A
> muestra y de qué manera.
> 
> Un saludo,
> 
> Carlos J. Gil Bellosta
> http://www.datanalytics.com
> 
> El día 28 de mayo de 2013 19:06, Gabriel Trujillo Paucar
> <gabriel_enter@hotmail.com> escribió:
> > 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]]
> >
> >
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es@r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-help-es
> >
 		 	   		  
	[[alternative HTML version deleted]]