Re: [R-es] trabajar con todos los elementos de la fila de un data.table

2015-01-28 Thread Olivier Nuñez
Utiliza "collapse" en vez de "sep" dentro de la función paste().
Un ejemplo:

> DT=data.table(ID=1:4,ERR1=c(1,1,NA,NA),ERR2=c(NA,2,2,NA),ERR3=c(3,3,3,NA))
> DT
   ID ERR1 ERR2 ERR3
1:  11   NA3
2:  2123
3:  3   NA23
4:  4   NA   NA   NA
> DT[,lista:=paste(na.omit(c(ERR1,ERR2,ERR3)),collapse="|"),by=ID]
> DT
   ID ERR1 ERR2 ERR3 lista
1:  11   NA3   1|3
2:  2123 1|2|3
3:  3   NA23   2|3
4:  4   NA   NA   NA  
> 


- Mensaje original -
De: "Patricio Fuenmayor Viteri" 
Para: "r-help-es" 
Enviados: Martes, 27 de Enero 2015 17:05:23
Asunto: [R-es] trabajar con todos los elementos de la fila de un data.table

Hola a todos...Auxilio, estoy varado en esto y creo que mi terquedad no me deja 
avanzar ... terquedad ya que estoy usando la estructura data.table y no logro 
obtener el resultado. Tengo una DT contiene un DATO y los resultados de la 
aplicaci�n de una validaci�n (ERR01, ERR2, ERR3) y la concatenaci�n de estos 
errores en una sola columna. Si tiene error, graba el n�mero del error, si no 
lo tiene, graba NA. Utilizando la funci�n paste directamente en el DT se 
ontiene la variable LISTA:
DATO  ERR1  ERR2 ERR3  LIST 1  231|2|3BBB  
NA  23NA|2|3CCC  NA  NA 3NA|NA|3DDD 
NA  NA NA NA|NA|NA
Pero lo que se requiere es que el NA no se muestre, es decir lista deber�a 
tener elementos como: 1|2|3, 2|3, 3, y vac�o, si las 3 validaciones arrojaron 
NA.uso lo siguiente: 
DT[,lista:=paste(err1,err1,err3,sep="|")]
pero para quitar los NA, debo usar funciones como na.omit, y no logro crear la 
estructura para usarlo... que debe ser un na,omit(c(err1,err2,err3)) y sobre 
esto el paste.Supongo que tengo un l�o en uso de las estructuras ... Si no lo 
logro, toca trabajar con data.frames y dejar a aun lado mi terquedad...!!!
Gracias por cualquier ayuda y/o sugerencia.


  
[[alternative HTML version deleted]]


___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] Ajuste con exponencial

2015-01-28 Thread Hector Gómez Fuerte

Saludos cordiales.

 

Lamentablemente lo que dice Carlos no es correcto. Cuando la distribución exponencial la truncamos en un intervalo la constante de la función de densidad (para que integre 1) tiene una dependencia (complicada) del parámetro que multiplica al exponente, con lo cual la ecuación de verosimilitud no es nada sencila ni se puede resolver exactamente . La estimación maximo-verosímil requeriría de algoritmos numéricos y por tanto de software para su cálculo. Yo creo que esta no debe ser la mejor solución, y me sorprende no haber encontrado (puede que por mi torpeza) nada para ello en el R. De aquí la pregunta que hacia en este foro.

 

Héctor Gómez

 

Enviar: martes 27 de enero de 2015 a las 22:07
De: "Carlos J. Gil Bellosta " 
Para: "Hector Gómez Fuerte" 
CC: "Lista R" 
Asunto: Re: [R-es] Ajuste con exponencial

Hola, ¿qué tal?

Creo que el ajuste (por máxima verosimilitud) de lambda es el inverso
de la media de tus datos. Tu densidad en el intervalo de interés es
como la de la exponencial (dividida por una constante de
normalización). El logaritmo de la verosimitud es, por lo tanto, como
el de la exponencial sin truncar más una constante.

Luego la teoría habitual (de cómo el inverso de la media es el
estimador por MV de lambda) aplica con cambios mínimos.

Un saludo,

Carlos J. Gil Bellosta
http://www.datanalytics.com

El día 27 de enero de 2015, 19:53, "Hector Gómez Fuerte"
 escribió:
> Buenas tardes,
> ¿cómo puedo con el R ajustar una distribución exponencial truancada (en el
> intervalo [10,60]) a un vector de datos?
> Muchas gracias.
> Héctor Gómez
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>




___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] Ajuste con exponencial

2015-01-28 Thread Francisco Rodríguez
Hola Hector, buenos d�as:Hay un m�todo generalista para maximizar funciones en 
R que quiz�s te valga, prueba lo siguiente a ver qu� tal (por supuesto, si te 
fijas en la definici�n de la funci�n de verosimilitud, ves que la "he cuadrado 
a mano" al intervalo que tratas"library(optimx)muestra <- c(50, 20, 31, 40, 
10)funcionExpTrun <- function(l, x){n <- length(x)f <- rep(0, n)
for (i in 1:n){  f[i]<- -log(l*exp(-l*x[i])/(exp(-10*l)-exp(-60*l)))
}sumaf <- sum(f)return (sumaf)}resultado <- optim(par = 
c(0.1), fn = funcionExpTrun,   method = c("L-BFGS-B"), lower = 
c(-Inf, 0), upper = c(Inf,  
   Inf), x = muestra)El c�digo lo he sacado (con alguna 
adaptaci�n por mi parte) 
de:http://www.mat.uda.cl/jolivares/probabilidades/EMV.pdfEl par�metro al que 
converge ser�a: $par[1] 0.02356897Un saludo
From: hect...@gmx.es
To: c...@datanalytics.com; r-help-es@r-project.org
Date: Wed, 28 Jan 2015 12:27:56 +0100
Subject: Re: [R-es] Ajuste con exponencial


Saludos cordiales.

 

Lamentablemente lo que dice Carlos no es correcto. Cuando la distribuci�n 
exponencial la truncamos en un intervalo la constante de la funci�n de densidad 
(para que integre 1) tiene una dependencia (complicada) del par�metro que 
multiplica al exponente, con lo cual la ecuaci�n de verosimilitud no es nada 
sencila ni se puede resolver exactamente . La estimaci�n maximo-veros�mil 
requerir�a de algoritmos num�ricos y por tanto de software para su c�lculo. Yo 
creo que esta no debe ser la mejor soluci�n, y me sorprende no haber encontrado 
(puede que por mi torpeza) nada para ello en el R. De aqu� la pregunta que 
hacia en este foro.

 

H�ctor G�mez

 

Enviar: martes 27 de enero de 2015 a las 22:07

De: "Carlos J. Gil Bellosta " 

Para: "Hector G�mez Fuerte" 

CC: "Lista R" 

Asunto: Re: [R-es] Ajuste con exponencial

Hola, �qu� tal?



Creo que el ajuste (por m�xima verosimilitud) de lambda es el inverso

de la media de tus datos. Tu densidad en el intervalo de inter�s es

como la de la exponencial (dividida por una constante de

normalizaci�n). El logaritmo de la verosimitud es, por lo tanto, como

el de la exponencial sin truncar m�s una constante.



Luego la teor�a habitual (de c�mo el inverso de la media es el

estimador por MV de lambda) aplica con cambios m�nimos.



Un saludo,



Carlos J. Gil Bellosta

http://www.datanalytics.com



El d�a 27 de enero de 2015, 19:53, "Hector G�mez Fuerte"

 escribi�:

> Buenas tardes,

> �c�mo puedo con el R ajustar una distribuci�n exponencial truancada (en el

> intervalo [10,60]) a un vector de datos?

> Muchas gracias.

> H�ctor G�mez

>

> ___

> R-help-es mailing list

> R-help-es@r-project.org

> https://stat.ethz.ch/mailman/listinfo/r-help-es

>





___
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


Re: [R-es] Ajuste con exponencial

2015-01-28 Thread Jorge I Velez
Hola Hector,

No soy experto, pero en

http://r.789695.n4.nabble.com/Fitting-weibull-exponential-and-lognormal-distributions-to-left-truncated-data-td869977.html
http://www.r-bloggers.com/r-help-follow-up-truncated-exponential/
http://www.jstatsoft.org/v16/c02/paper

hay algunas ideas.Espero te sirvan.

Saludos,
Jorge.-



2015-01-28 22:27 GMT+11:00 "Hector G�mez Fuerte" :

> Saludos cordiales.
>
> Lamentablemente lo que dice Carlos no es correcto. Cuando la distribuci�n
> exponencial la truncamos en un intervalo la constante de la funci�n de
> densidad (para que integre 1) tiene una dependencia (complicada) del
> par�metro que multiplica al exponente, con lo cual la ecuaci�n de
> verosimilitud no es nada sencila ni se puede resolver exactamente . La
> estimaci�n maximo-veros�mil requerir�a de algoritmos num�ricos y por tanto
> de software para su c�lculo. Yo creo que esta no debe ser la mejor
> soluci�n, y me sorprende no haber encontrado (puede que por mi torpeza)
> nada para ello en el R. De aqu� la pregunta que hacia en este foro.
>
> H�ctor G�mez
>
> *Enviar:* martes 27 de enero de 2015 a las 22:07
> *De:* "Carlos J. Gil Bellosta " 
> *Para:* "Hector G�mez Fuerte" 
> *CC:* "Lista R" 
> *Asunto:* Re: [R-es] Ajuste con exponencial
> Hola, �qu� tal?
>
> Creo que el ajuste (por m�xima verosimilitud) de lambda es el inverso
> de la media de tus datos. Tu densidad en el intervalo de inter�s es
> como la de la exponencial (dividida por una constante de
> normalizaci�n). El logaritmo de la verosimitud es, por lo tanto, como
> el de la exponencial sin truncar m�s una constante.
>
> Luego la teor�a habitual (de c�mo el inverso de la media es el
> estimador por MV de lambda) aplica con cambios m�nimos.
>
> Un saludo,
>
> Carlos J. Gil Bellosta
> http://www.datanalytics.com
>
> El d�a 27 de enero de 2015, 19:53, "Hector G�mez Fuerte"
>  escribi�:
> > Buenas tardes,
> > �c�mo puedo con el R ajustar una distribuci�n exponencial truancada (en
> el
> > intervalo [10,60]) a un vector de datos?
> > Muchas gracias.
> > H�ctor G�mez
> >
> > ___
> > R-help-es mailing list
> > R-help-es@r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-help-es
> >
>
> ___
> 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


Re: [R-es] Ajuste con exponencial

2015-01-28 Thread Carlos Ortega
Hola,

Si tienes su expresión algebráica, podrías ajustarla con un ajuste no
lineal "nls()".

"nls()" viene por defecto dentro del paquete "stats" y si no fuese posible
hacerla converger, puedes utilizar otros paquetes (nlstools, nls2) que
modifican "nls()" que utilizan otros algoritmos de convergencia.

Saludos,
Carlos Ortega
www.qualityexcellence.es

El 27 de enero de 2015, 19:53, "Hector Gómez Fuerte" 
escribió:

> Buenas tardes,
> ¿cómo puedo con el R ajustar una distribución exponencial truancada (en el
> intervalo [10,60]) a un vector de datos?
> Muchas gracias.
> Héctor Gómez
>
> ___
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>


-- 
Saludos,
Carlos Ortega
www.qualityexcellence.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


Re: [R-es] Ajuste con exponencial

2015-01-28 Thread Francisco Rodríguez
Hola Hector, buenos d�as:
Hay un m�todo generalista para maximizar funciones en R que quiz�s te valga, 
prueba lo siguiente a ver qu� tal (por supuesto, si te fijas en la definici�n 
de la funci�n de verosimilitud, ves que la "he cuadrado a mano" al intervalo 
que tratas"
library(optimx)
muestra <- c(50, 20, 31, 40, 10)
funcionExpTrun <- function(l, x){n <- length(x)f <- rep(0, n)
for (i in 1:n){  f[i]<- -log(l*exp(-l*x[i])/(exp(-10*l)-exp(-60*l)))
}sumaf <- sum(f)return (sumaf)}
resultado <- optim(par = c(0.1), fn = funcionExpTrun,   method 
= c("L-BFGS-B"), lower = c(-Inf, 0), upper = c(Inf, 
Inf), x = muestra)


El c�digo lo he sacado (con alguna adaptaci�n por mi parte) de:
http://www.mat.uda.cl/jolivares/probabilidades/EMV.pdf
El par�metro al que converge ser�a: 
$par[1] 0.02356897

Un saludo

From: hect...@gmx.es
To: c...@datanalytics.com; r-help-es@r-project.org
Date: Wed, 28 Jan 2015 12:27:56 +0100
Subject: Re: [R-es] Ajuste con exponencial


Saludos cordiales.

 

Lamentablemente lo que dice Carlos no es correcto. Cuando la distribuci�n 
exponencial la truncamos en un intervalo la constante de la funci�n de densidad 
(para que integre 1) tiene una dependencia (complicada) del par�metro que 
multiplica al exponente, con lo cual la ecuaci�n de verosimilitud no es nada 
sencila ni se puede resolver exactamente . La estimaci�n maximo-veros�mil 
requerir�a de algoritmos num�ricos y por tanto de software para su c�lculo. Yo 
creo que esta no debe ser la mejor soluci�n, y me sorprende no haber encontrado 
(puede que por mi torpeza) nada para ello en el R. De aqu� la pregunta que 
hacia en este foro.

 

H�ctor G�mez

 

Enviar: martes 27 de enero de 2015 a las 22:07

De: "Carlos J. Gil Bellosta " 

Para: "Hector G�mez Fuerte" 

CC: "Lista R" 

Asunto: Re: [R-es] Ajuste con exponencial

Hola, �qu� tal?



Creo que el ajuste (por m�xima verosimilitud) de lambda es el inverso

de la media de tus datos. Tu densidad en el intervalo de inter�s es

como la de la exponencial (dividida por una constante de

normalizaci�n). El logaritmo de la verosimitud es, por lo tanto, como

el de la exponencial sin truncar m�s una constante.



Luego la teor�a habitual (de c�mo el inverso de la media es el

estimador por MV de lambda) aplica con cambios m�nimos.



Un saludo,



Carlos J. Gil Bellosta

http://www.datanalytics.com



El d�a 27 de enero de 2015, 19:53, "Hector G�mez Fuerte"

 escribi�:

> Buenas tardes,

> �c�mo puedo con el R ajustar una distribuci�n exponencial truancada (en el

> intervalo [10,60]) a un vector de datos?

> Muchas gracias.

> H�ctor G�mez

>

> ___

> R-help-es mailing list

> R-help-es@r-project.org

> https://stat.ethz.ch/mailman/listinfo/r-help-es

>





___
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


Re: [R-es] trabajar con todos los elementos de la fila de un data.table

2015-01-28 Thread Olivier Nuñez
Cocinando de manera más o menos elegante, se obtiene algo más eficiente: 



> require(data.table) 
> n=1 
> DT=data.table(ID=1:(4*n),ERR1=rep(c(1,1,NA,NA),n),ERR2=rep(c(NA,2,2,NA),n),ERR3=rep(c(3,3,3,NA),n))
>  
> system.time(DT[,lista:=paste(na.omit(c(ERR1,ERR2,ERR3)),collapse="|"),by=ID]) 
user system elapsed 
0.71 0.00 0.72 
> 
> 
> DT2=data.table(ERR1=rep(c(1,1,NA,NA),n),ERR2=rep(c(NA,2,2,NA),n),ERR3=rep(c(3,3,3,NA),n))
>  
> system.time( 
+ 
DT2[,lista:=gsub("\\|$","",gsub("NA|","",paste0(paste(ERR1,ERR2,ERR3,sep="|"),"|"),fixed=TRUE))]
 
+ ) 
user system elapsed 
0.11 0.00 0.11 





- Mensaje original -

De: "Patricio Fuenmayor Viteri"  
Para: "Olivier Nuñez"  
Enviados: Miércoles, 28 de Enero 2015 16:15:32 
Asunto: RE: [R-es] trabajar con todos los elementos de la fila de un data.table 

Gracias !!! 
Exactamente lo que quería... 
estaba cerca ... !!! 

Ahora me pregunto... hay una forma mas eficiente de hacer esto ??? mi duda 
surge ya que mi proceso de validación tarda 3 veces menos que este 
"etiquetamiento" de los errores ... y pensaría que debería ser al contrario 
porque solo estoy juntando valores y poniéndoles una condición 

una vez mas gracias ... !!! 



> Date: Wed, 28 Jan 2015 10:00:59 +0100 
> From: onu...@unex.es 
> To: patricio.fuenma...@outlook.com 
> CC: r-help-es@r-project.org 
> Subject: Re: [R-es] trabajar con todos los elementos de la fila de un 
> data.table 
> 
> Utiliza "collapse" en vez de "sep" dentro de la función paste(). 
> Un ejemplo: 
> 
> > DT=data.table(ID=1:4,ERR1=c(1,1,NA,NA),ERR2=c(NA,2,2,NA),ERR3=c(3,3,3,NA)) 
> > DT 
> ID ERR1 ERR2 ERR3 
> 1: 1 1 NA 3 
> 2: 2 1 2 3 
> 3: 3 NA 2 3 
> 4: 4 NA NA NA 
> > DT[,lista:=paste(na.omit(c(ERR1,ERR2,ERR3)),collapse="|"),by=ID] 
> > DT 
> ID ERR1 ERR2 ERR3 lista 
> 1: 1 1 NA 3 1|3 
> 2: 2 1 2 3 1|2|3 
> 3: 3 NA 2 3 2|3 
> 4: 4 NA NA NA 
> > 
> 
> 
> - Mensaje original - 
> De: "Patricio Fuenmayor Viteri"  
> Para: "r-help-es"  
> Enviados: Martes, 27 de Enero 2015 17:05:23 
> Asunto: [R-es] trabajar con todos los elementos de la fila de un data.table 
> 
> Hola a todos...Auxilio, estoy varado en esto y creo que mi terquedad no me 
> deja avanzar ... terquedad ya que estoy usando la estructura data.table y no 
> logro obtener el resultado. Tengo una DT contiene un DATO y los resultados de 
> la aplicaci�n de una validaci�n (ERR01, ERR2, ERR3) y la concatenaci�n de 
> estos errores en una sola columna. Si tiene error, graba el n�mero del error, 
> si no lo tiene, graba NA. Utilizando la funci�n paste directamente en el DT 
> se ontiene la variable LISTA: 
> DATO ERR1 ERR2 ERR3 LIST 1 2 3 1|2|3BBB NA 2 3 NA|2|3CCC NA NA 3 
> NA|NA|3DDD NA NA NA NA|NA|NA 
> Pero lo que se requiere es que el NA no se muestre, es decir lista deber�a 
> tener elementos como: 1|2|3, 2|3, 3, y vac�o, si las 3 validaciones arrojaron 
> NA.uso lo siguiente: 
> DT[,lista:=paste(err1,err1,err3,sep="|")] 
> pero para quitar los NA, debo usar funciones como na.omit, y no logro crear 
> la estructura para usarlo... que debe ser un na,omit(c(err1,err2,err3)) y 
> sobre esto el paste.Supongo que tengo un l�o en uso de las estructuras ... Si 
> no lo logro, toca trabajar con data.frames y dejar a aun lado mi 
> terquedad...!!! 
> Gracias por cualquier ayuda y/o sugerencia. 
> 
> 
> 
> [[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


[R-es] sobre tres variables

2015-01-28 Thread jbetancourt

Estimados

Para analizar tres muestras cualitativas independientes se utiliza  
Cochran-Mantel-Haenszel test 


?Cual script es el adecuado para analizar tres variables dependientes?en 
MCNEMAR  solo se permite analizar dos variables cualitaticvas dependientes

saludos


--
Este mensaje le ha llegado mediante el servicio de correo electronico que 
ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema 
Nacional de Salud. La persona que envia este correo asume el compromiso de usar 
el servicio a tales fines y cumplir con las regulaciones establecidas

Infomed: http://www.sld.cu/

[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] Ajuste con exponencial

2015-01-28 Thread Carlos J. Gil Bellosta
Mil perdones, llevo unos días "fuera de mi eje". Tienes toda la razón del mundo.

Analíticamente se puede probar (y si aceptas que 1-exp(-50 lambda) es
1, es decir, que tu lambda no es demasiado pequeño) que tu lambda no
está lejos del inverso de la media de tus valores menos diez.

Maximizar via optim la función de verosimilitud como propone Francisco
es otra opción.

Hay un paquete para distribuciones truncadas, truncgof, que usé hace
unos años, pero nunca funcionó demasiado bien (al menos con
distribuciones más raras que la exponencial). Es otra opción, pero ten
cuidado con los resultados.

Un saludo y mil excusas,

Carlos J. Gil Bellosta
http://www.datanalytics.com




El día 28 de enero de 2015, 12:27, "Hector Gómez Fuerte"
 escribió:
> Saludos cordiales.
>
> Lamentablemente lo que dice Carlos no es correcto. Cuando la distribución
> exponencial la truncamos en un intervalo la constante de la función de
> densidad (para que integre 1) tiene una dependencia (complicada) del
> parámetro que multiplica al exponente, con lo cual la ecuación de
> verosimilitud no es nada sencila ni se puede resolver exactamente . La
> estimación maximo-verosímil requeriría de algoritmos numéricos y por tanto
> de software para su cálculo. Yo creo que esta no debe ser la mejor solución,
> y me sorprende no haber encontrado (puede que por mi torpeza) nada para ello
> en el R. De aquí la pregunta que hacia en este foro.
>
> Héctor Gómez
>
> Enviar: martes 27 de enero de 2015 a las 22:07
> De: "Carlos J. Gil Bellosta " 
> Para: "Hector Gómez Fuerte" 
> CC: "Lista R" 
> Asunto: Re: [R-es] Ajuste con exponencial
> Hola, ¿qué tal?
>
> Creo que el ajuste (por máxima verosimilitud) de lambda es el inverso
> de la media de tus datos. Tu densidad en el intervalo de interés es
> como la de la exponencial (dividida por una constante de
> normalización). El logaritmo de la verosimitud es, por lo tanto, como
> el de la exponencial sin truncar más una constante.
>
> Luego la teoría habitual (de cómo el inverso de la media es el
> estimador por MV de lambda) aplica con cambios mínimos.
>
> Un saludo,
>
> Carlos J. Gil Bellosta
> http://www.datanalytics.com
>
> El día 27 de enero de 2015, 19:53, "Hector Gómez Fuerte"
>  escribió:
>> Buenas tardes,
>> ¿cómo puedo con el R ajustar una distribución exponencial truancada (en el
>> intervalo [10,60]) a un vector de datos?
>> Muchas gracias.
>> Héctor Gómez
>>
>> ___
>> R-help-es mailing list
>> R-help-es@r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>

___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


Re: [R-es] Ajuste con exponencial

2015-01-28 Thread Hector Gómez Fuerte

¡Muchas gracias a todos por vuestras sabias respuestas! Voy a trabajar en ello...

Saludos.

Héctor

 

Enviar: miércoles 28 de enero de 2015 a las 20:13
De: "Carlos J. Gil Bellosta " 
Para: "Hector Gómez Fuerte" 
CC: "Lista R" 
Asunto: Re: [R-es] Ajuste con exponencial

Mil perdones, llevo unos días "fuera de mi eje". Tienes toda la razón del mundo.

Analíticamente se puede probar (y si aceptas que 1-exp(-50 lambda) es
1, es decir, que tu lambda no es demasiado pequeño) que tu lambda no
está lejos del inverso de la media de tus valores menos diez.

Maximizar via optim la función de verosimilitud como propone Francisco
es otra opción.

Hay un paquete para distribuciones truncadas, truncgof, que usé hace
unos años, pero nunca funcionó demasiado bien (al menos con
distribuciones más raras que la exponencial). Es otra opción, pero ten
cuidado con los resultados.

Un saludo y mil excusas,

Carlos J. Gil Bellosta
http://www.datanalytics.com




El día 28 de enero de 2015, 12:27, "Hector Gómez Fuerte"
 escribió:
> Saludos cordiales.
>
> Lamentablemente lo que dice Carlos no es correcto. Cuando la distribución
> exponencial la truncamos en un intervalo la constante de la función de
> densidad (para que integre 1) tiene una dependencia (complicada) del
> parámetro que multiplica al exponente, con lo cual la ecuación de
> verosimilitud no es nada sencila ni se puede resolver exactamente . La
> estimación maximo-verosímil requeriría de algoritmos numéricos y por tanto
> de software para su cálculo. Yo creo que esta no debe ser la mejor solución,
> y me sorprende no haber encontrado (puede que por mi torpeza) nada para ello
> en el R. De aquí la pregunta que hacia en este foro.
>
> Héctor Gómez
>
> Enviar: martes 27 de enero de 2015 a las 22:07
> De: "Carlos J. Gil Bellosta " 
> Para: "Hector Gómez Fuerte" 
> CC: "Lista R" 
> Asunto: Re: [R-es] Ajuste con exponencial
> Hola, ¿qué tal?
>
> Creo que el ajuste (por máxima verosimilitud) de lambda es el inverso
> de la media de tus datos. Tu densidad en el intervalo de interés es
> como la de la exponencial (dividida por una constante de
> normalización). El logaritmo de la verosimitud es, por lo tanto, como
> el de la exponencial sin truncar más una constante.
>
> Luego la teoría habitual (de cómo el inverso de la media es el
> estimador por MV de lambda) aplica con cambios mínimos.
>
> Un saludo,
>
> Carlos J. Gil Bellosta
> http://www.datanalytics.com
>
> El día 27 de enero de 2015, 19:53, "Hector Gómez Fuerte"
>  escribió:
>> Buenas tardes,
>> ¿cómo puedo con el R ajustar una distribución exponencial truancada (en el
>> intervalo [10,60]) a un vector de datos?
>> Muchas gracias.
>> Héctor Gómez
>>
>> ___
>> R-help-es mailing list
>> R-help-es@r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>




___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es