--- El lun, 12/9/11, Cristalina <pa100cia77@yahoo.es> escribió: De: Cristalina <pa100cia77@yahoo.es> Asunto: Re: [R-es] Cosinor Analysis Para: "Carlos Ortega" <coforfe@gmail.com> Fecha: lunes, 12 de septiembre, 2011 08:43 Hola, Carlos, muchas gracias. El método empleado en http://tolstoy.newcastle.edu.au/R/e6/help/09/01/0626.html (el url que se referencia en la conversación que indicas) es el que utilizo, pues me baso en el uso de la función lm. El problema es el siguiente: Aquí, six.to.two <- function( M.i, beta.i, gamma.i, omega, r.ij, s.ij ) { A.i <- sqrt( beta.i^2 + gamma.i^2 ) phi.i <- atan( gamma.i / beta.i ) t.ij <- acos( r.ij ) / omega res <- list( M.i = M.i, A.i = A.i, phi.i = phi.i, t.ij = t.ij ) attr(res,"omega") <- omega res } obtiene la amplitud (A) y la ortofase (phi) a partir de beta y gamma, siendo estos dos últimos los coeficientes de la regresión (bueno, en realidad son 3 coeficientes, si contamos el mesor). El caso es que la función lm devuelve el standard error (s.e.) de beta y gamma, pero no sé calcular el stándard error de la amplitud y la ortofase. Aparte de ésto, ¿Alguien tiene localizado el artículo de Tong?. Saludos. --- El dom, 11/9/11, Carlos Ortega <coforfe@gmail.com> escribió: De: Carlos Ortega <coforfe@gmail.com> Asunto: Re: [R-es] Cosinor Analysis Para: "Cristalina" <pa100cia77@yahoo.es> CC: "r-help-es@r-project.org" <r-help-es@r-project.org> Fecha: domingo, 11 de septiembre, 2011 23:15 Hola de nuevo, Me sonaba que hubo una consulta sobre "cosinor" en esta lista hace tiempo y efectivamente la hubo a principios de año. Alguien preguntó sobre cómo obtener el p-value de una correlación. Quizás el detalle de lo que se comenta te pueda ayudar. El hilo de la conversación está aquí: http://web.archiveorange.com/archive/v/H7rXy92mC3cVEWnJNrGe Saludos, Carlos Ortega www.qualityexcellence.es 2011/9/11 Carlos Ortega <coforfe@gmail.com> Hola, Si por favor puedes poner un ejemplo simplificado del problema o del código en R que has utilizado nos puede ayudar un poco más. Saludos, Carlos Ortega www.qualityexcellence.es 2011/9/11 Cristalina <pa100cia77@yahoo.es> Hola, En el contexto del método del cosinor descrito por Halberg y posteriormente por Bingham, no logro calcular el error standard correspondiente a la amplitud y a la ortofase. La función lm permite obtener, entre otros datos, el error standard correspondiente a los coeficientes de la regresión (intercept, beta y gamma), pero no sé cómo relacionar ese s.e. de beta y gamma con el s.e. de amplitud y acrofase respectivamente. A ver si alguien me puede ayudar. Gracias de antemano. Un saludo. [[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, Podrías escribir al autor de las funciones que aparece en el mail de la lista para que te diera el detalle de los estadísticos de esos parámetros. Por otro lado el artículo de Tong está aquí, pero en versión de pago... http://www.jstor.org/pss/2529340 Quizás alguien de la lista que trabaje en un organismo oficial (tipo CSIC) pudiera pasarte el paper. Saludos, Carlos Ortega www.qualityexcellence.es 2011/9/12 Cristalina <pa100cia77@yahoo.es>> > > --- El lun, 12/9/11, Cristalina <pa100cia77@yahoo.es> escribió: > > > De: Cristalina <pa100cia77@yahoo.es> > Asunto: Re: [R-es] Cosinor Analysis > Para: "Carlos Ortega" <coforfe@gmail.com> > Fecha: lunes, 12 de septiembre, 2011 08:43 > > > > > > > > Hola, > > Carlos, muchas gracias. > > El método empleado en > http://tolstoy.newcastle.edu.au/R/e6/help/09/01/0626.html (el url que se > referencia en la conversación que indicas) es el que utilizo, pues me baso > en el uso de la función lm. > > El problema es el siguiente: > > Aquí, > > six.to.two <- > function( M.i, beta.i, gamma.i, omega, r.ij, s.ij ) { A.i <- > sqrt( beta.i^2 + gamma.i^2 ) > phi.i <- atan( gamma.i / beta.i ) > t.ij <- acos( r.ij ) / omega > res <- list( M.i = M.i, A.i = A.i, phi.i = phi.i, t.ij = t.ij ) > attr(res,"omega") <- omega > res > > > } > > obtiene la amplitud (A) y la ortofase (phi) a partir de beta y gamma, > siendo estos dos últimos los coeficientes de la regresión (bueno, en > realidad son 3 coeficientes, si contamos el mesor). El caso es que la > función lm devuelve el standard error (s.e.) de beta y gamma, pero no sé > calcular el stándard error de la amplitud y la ortofase. > > Aparte de ésto, ¿Alguien tiene localizado el artículo de Tong?. > > Saludos. > > --- El dom, 11/9/11, Carlos Ortega <coforfe@gmail.com> escribió: > > > De: Carlos Ortega <coforfe@gmail.com> > Asunto: Re: [R-es] Cosinor Analysis > Para: "Cristalina" <pa100cia77@yahoo.es> > CC: "r-help-es@r-project.org" <r-help-es@r-project.org> > Fecha: domingo, 11 de septiembre, 2011 23:15 > > > Hola de nuevo, > > > > Me sonaba que hubo una consulta sobre "cosinor" en esta lista hace tiempo y > efectivamente la hubo a principios de año. Alguien preguntó sobre cómo > obtener el p-value de una correlación. Quizás el detalle de lo que se > comenta te pueda ayudar. > > > El hilo de la conversación está aquí: > http://web.archiveorange.com/archive/v/H7rXy92mC3cVEWnJNrGe > > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > 2011/9/11 Carlos Ortega <coforfe@gmail.com> > > Hola, > > > > Si por favor puedes poner un ejemplo simplificado del problema o del código > en R que has utilizado nos puede ayudar un poco más. > > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > > > > > > 2011/9/11 Cristalina <pa100cia77@yahoo.es> > > > > > Hola, > > En el contexto del método del cosinor descrito por Halberg y posteriormente > por Bingham, no logro calcular el error standard correspondiente a la > amplitud y a la ortofase. La función lm permite obtener, entre otros datos, > el error standard correspondiente a los coeficientes de la regresión > (intercept, beta y gamma), pero no sé cómo relacionar ese s.e. de beta y > gamma con el s.e. de amplitud y acrofase respectivamente. > > A ver si alguien me puede ayudar. Gracias de antemano. > > Un saludo. > [[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]]
SI dispones de la distribución conjunta (asintótica) de los estimadores de los seis parámetros, puedes deducir la distribución de los estimadores de los dos parámetros de interés mediante el método Delta : http:// en.wikipedia.org/wiki/Delta_method, También puedes aproximar esta distribución mediante la simulación bootstrap. Así suponiendo que la distribución asíntotica de los estimadores de ( M.i, beta.i, gamma.i, omega, r.ij, s.ij ) es una normal con matriz de covarianza D, bastaría con simular N (¡N grande!) valores Z de esta distribución (ver función mvrnorm del paquete MASS) y calcular six.to.two(Z) para obtener una muestra de la distribución deseada. Un saludo. Olivier -- ____________________________________ Olivier G. Nuñez Email: onunez en iberstat.es Tel : +34 663 03 69 09 Web: http://www.iberstat.es ____________________________________ El 12/09/2011, a las 8:44, Cristalina escribió:> > > --- El lun, 12/9/11, Cristalina <pa100cia77 en yahoo.es> escribió: > > > De: Cristalina <pa100cia77 en yahoo.es> > Asunto: Re: [R-es] Cosinor Analysis > Para: "Carlos Ortega" <coforfe en gmail.com> > Fecha: lunes, 12 de septiembre, 2011 08:43 > > > > > > > > Hola, > > Carlos, muchas gracias. > > El método empleado en http://tolstoy.newcastle.edu.au/R/e6/help/ > 09/01/0626.html (el url que se referencia en la conversación que > indicas) es el que utilizo, pues me baso en el uso de la función lm. > > El problema es el siguiente: > > Aquí, > > six.to.two <- > function( M.i, beta.i, gamma.i, omega, r.ij, s.ij ) > { A.i <- sqrt( beta.i^2 + gamma.i^2 ) > phi.i <- atan( gamma.i / beta.i ) > t.ij <- acos( r.ij ) / omega > res <- list( M.i = M.i, A.i = A.i, phi.i = phi.i, t.ij = t.ij ) > attr(res,"omega") <- omega > res > > > } > > obtiene la amplitud (A) y la ortofase (phi) a partir de beta y > gamma, siendo estos dos últimos los coeficientes de la regresión > (bueno, en realidad son 3 coeficientes, si contamos el mesor). El > caso es que la función lm devuelve el standard error (s.e.) de beta > y gamma, pero no sé calcular el stándard error de la amplitud y la > ortofase. > > Aparte de ésto, ¿Alguien tiene localizado el artículo de Tong?. > > Saludos. > > --- El dom, 11/9/11, Carlos Ortega <coforfe en gmail.com> escribió: > > > De: Carlos Ortega <coforfe en gmail.com> > Asunto: Re: [R-es] Cosinor Analysis > Para: "Cristalina" <pa100cia77 en yahoo.es> > CC: "r-help-es en r-project.org" <r-help-es en r-project.org> > Fecha: domingo, 11 de septiembre, 2011 23:15 > > > Hola de nuevo, > > > > Me sonaba que hubo una consulta sobre "cosinor" en esta lista hace > tiempo y efectivamente la hubo a principios de año. Alguien > preguntó sobre cómo obtener el p-value de una correlación. Quizás > el detalle de lo que se comenta te pueda ayudar. > > > El hilo de la conversación está aquí: > http://web.archiveorange.com/archive/v/H7rXy92mC3cVEWnJNrGe > > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > 2011/9/11 Carlos Ortega <coforfe en gmail.com> > > Hola, > > > > Si por favor puedes poner un ejemplo simplificado del problema o > del código en R que has utilizado nos puede ayudar un poco más. > > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > > > > > > 2011/9/11 Cristalina <pa100cia77 en yahoo.es> > > > > > Hola, > > En el contexto del método del cosinor descrito por Halberg y > posteriormente por Bingham, no logro calcular el error standard > correspondiente a la amplitud y a la ortofase. La función lm > permite obtener, entre otros datos, el error standard > correspondiente a los coeficientes de la regresión (intercept, > beta y gamma), pero no sé cómo relacionar ese s.e. de beta y gamma > con el s.e. de amplitud y acrofase respectivamente. > > A ver si alguien me puede ayudar. Gracias de antemano. > > Un saludo. > [[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
Hola a todos, tengo dos columnas, una con un factor (altura) y la otra con la variable edad Quiero hacer unos intervalos de alturas para ver que rangos estan mas representados. Decido hacer cinco intervalos. Uso cut:> table(cut(altura, breaks = 5))(12,19.4] (19.4,26.8] (26.8,34.2] (34.2,41.6] (41.6,49] 630 4286 3560 287 11 ¿como podria hacer para que los intervalos no tuvieran decimales ? ¿y para añadir estos intervalos como una variable mas de la tabla? Gracias Jocedo ________________________________ [[alternative HTML version deleted]]
Hola, La función cut() tiene un parámetro. dig.lab donde indicas el número *total* de dígitos que deseas que tenga la etiqueta. Y sobre cómo incorporar las etiquetas a la tabla. Si guardas la salida de la tabla en una variable, el nombre de las filas son las etiquetas:> val.tab<-table(cut(y, breaks = pi/3*(-3:3), dig.lab=4))> > val.tab(-3.142,-2.094] (-2.094,-1.047] (-1.047,0] (0,1.047] 1 10 33 45 (1.047,2.094] (2.094,3.142] 9 1 > rownames(val.tab)[1] "(-3.142,-2.094]" "(-2.094,-1.047]" "(-1.047,0]" [4] "(0,1.047]" "(1.047,2.094]" "(2.094,3.142]" > Saludos, Carlos Ortega www.qualityexcellence.es 2011/9/19 jose cebrian <pepeceb@yahoo.es>> > > Hola a todos, > tengo dos columnas, una con un factor (altura) y la otra con la variable > edad > > Quiero hacer unos intervalos de alturas para ver que rangos estan mas > representados. > Decido hacer cinco intervalos. > Uso cut: > > table(cut(altura, breaks = 5)) > > (12,19.4] (19.4,26.8] (26.8,34.2] (34.2,41.6] (41.6,49] > 630 4286 3560 287 11 > > ¿como podria hacer para que los intervalos no tuvieran decimales ? > ¿y para añadir estos intervalos como una variable mas de la tabla? > Gracias > > Jocedo > > > ________________________________ > [[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]]
Buenas. Para la primera cuestión, define tú los cortes, p. ej. cut(altura, c(0, 19, 27, Inf)) o puedes hacer dig.lab=0. Todo eso se cuenta en ?cut. La segunda pregunta, no la entiendo. Un saludo Gregorio R. Serrano El 19 de septiembre de 2011 12:57, jose cebrian <pepeceb@yahoo.es> escribió:> > > Hola a todos, > tengo dos columnas, una con un factor (altura) y la otra con la variable > edad > > Quiero hacer unos intervalos de alturas para ver que rangos estan mas > representados. > Decido hacer cinco intervalos. > Uso cut: > > table(cut(altura, breaks = 5)) > > (12,19.4] (19.4,26.8] (26.8,34.2] (34.2,41.6] (41.6,49] > 630 4286 3560 287 11 > > ¿como podria hacer para que los intervalos no tuvieran decimales ? > ¿y para añadir estos intervalos como una variable mas de la tabla? > Gracias > > Jocedo > > > ________________________________ > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >-- Dr. Gregorio R. Serrano Dpto. Economía Cuantitativa (UCM) Voz:+34 91394 2361 Fax:+34 91394 2591 http://www.grserrano.es [[alternative HTML version deleted]]
Hola Jose, Para la primera parte:> x <- rnorm(8000, 35, 10) > table(cut(x, c(12, 20, 27, 34, 42, 49, Inf)))(12,20] (20,27] (27,34] (34,42] (42,49] (49,Inf] 454 1186 2042 2379 1272 573> table(cut(x, c(12, 20, 27, 34, 42, 49)))(12,20] (20,27] (27,34] (34,42] (42,49] 454 1186 2042 2379 1272 Y para la segunda: data.frame(x, categoria = cut(x, c(12, 20, 27, 34, 42, 49, Inf)))[1:10,] Un saludo, Jorge 2011/9/19 jose cebrian <>> > > Hola a todos, > tengo dos columnas, una con un factor (altura) y la otra con la variable > edad > > Quiero hacer unos intervalos de alturas para ver que rangos estan mas > representados. > Decido hacer cinco intervalos. > Uso cut: > > table(cut(altura, breaks = 5)) > > (12,19.4] (19.4,26.8] (26.8,34.2] (34.2,41.6] (41.6,49] > 630 4286 3560 287 11 > > ¿como podria hacer para que los intervalos no tuvieran decimales ? > ¿y para añadir estos intervalos como una variable mas de la tabla? > Gracias > > Jocedo > > > ________________________________ > [[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]]