[R-es] Clasificacion de individuos

jluis.gilsanz en tasacionesh.com jluis.gilsanz en tasacionesh.com
Mar Sep 30 15:57:00 CEST 2014


Hola:

Lo que hace el no mirar en detalle la ayuda¡¡¡ La cantidad de pruebas 
Box-Cox que he hecho a pelo para encontrar un lambda bueno.


Tengo que mirar a fondo esos paquetes  de ajuste de distribuciones que 
sugieres no vaya a ser que me pase como con las transformaciones Box-Cox 
;-)

Muchas gracias Carlos











{In Archive}  Re: [R-es] Clasificacion de individuos

(Internet)
cof 


To:
Jluis GILSANZ
Cc:
r-help-es

30/09/2014 15:12



Archive: 
This message is being viewed in an archive.



Hola,

1. Para la transformación Box-Cox, en vez de probar con diferentes 
valores, puedes utilizar la función boxcox() del paquete MASS que te 
optimizará el lambda de la transformación de forma automática.

2. Sobre paquetes para ajustar distribuciones, lo hemos hablado en la 
lista hace un tiempo, pero por ver lo que hay ahora...:

http://cran.rstudio.com/web/packages/DistributionUtils/index.html
http://cran.rstudio.com/web/packages/goft/index.html
http://cran.rstudio.com/web/packages/reliaR/index.html
http://cran.rstudio.com/web/packages/rriskDistributions/index.html

Saludos,
Carlos Ortega
www.qualityexcellence.es



El 30 de septiembre de 2014, 12:23, <jluis.gilsanz en tasacionesh.com> 
escribió:
Estimados apañeRos:

La duda o propuesta que os voy a plantear es a la vez metodológica y
relacionada con R.

Me encuentro trabajando con tres variables que son el resultado de un
computo de porcentajes.
Me explico, se toma una muestra de n casos (unos 6.500 aprox)
pertenecientes a i individuos  (unos 230 aprox) en la que se comprueba si
un determinado evento ha ocurrido o no, anotándose 1 en caso de dicha
ocurrencia y 0 en caso de no ocurrencia.
Algo así como:
 indiv  ocurrencia
--------        -----------------
1       0
1       0
1       1
2       0
2       1
3       0
3       0
3       0
4       1
4       1
.       .
.       .
.       .
n

Tras ello se computa el porcentaje de ocurrencias para cada individuo
obteniendo las variables que serán estudiadas, obteniendo algo así:

indiv   %
-----   ------
1       0.333
2       0.5
3       0
4       1
.       .
.       .
i

Este mismo proceso se repite en cada una de las tres variables objeto de
estudio.

Lo que se pretende es clasificar los i individuos en tres grupos según sus
resultados en  cuanto a los porcentajes calculados (%):
-Por debajo de la media: Individuos que forman parte de la cola con peores
porcentajes. Aprox 10%
-Por encima de la media:  Individuos que forman parte  de la cola con
peores porcentajes. Aprox 10%
-Acordes a la media: El 80% de individuos resultantes.

Se trata básicamente de "regañar" a los del primer grupo y "felicitar" los
del segundo grupo ;-)

La cuestión es que de las tres variables en estudio, las dos ultimas no
son normales:

>stem(v1)

The decimal point is 1 digit(s) to the left of the |

   0 | 0000000000466899
   1 | 0133347777778999
   2 | 0000011233344555667778889999
   3 | 0001233333333334444567778888889999999999
   4 | 000001122233333344444566788889999
   5 | 000000000000011234444566667777889
   6 | 00122233345555777777788899
   7 | 00011222334455567779
   8 | 1333336668
   9 |
  10 | 0000000000000

>quantile(v1,c(0.1,0.9))
   10%    90%
0.1670 0.7834



>stem(v2)

The decimal point is 1 digit(s) to the left of the |

   0 |
00000000000000000000000000000000000000000000000000000000000000000000+75
   1 | 00000000111122233333444445677788888999
   2 | 0000122444557899
   3 | 0001123378999
   4 | 266
   5 | 0000
   6 | 57
   7 |
   8 | 3
   9 |
  10 | 000

>quantile(v2,c(0.1,0.9))
10%   90%
0.000 0.304



stem(V3)

 The decimal point is 1 digit(s) to the left of the |

   0 |
00000000000000000000000000000000011111111122222222222222222222222222+128
   1 | 000001133333477
   2 | 000
   3 | 3
   4 |
   5 | 000
   6 |
   7 |
   8 |
   9 |
  10 | 00000

>quantile(V3,c(0.1,0.9))
10%   90%
0.0 0.1



La primera variable V1 aparece como Normal segun los test de
Kolmogorv-Smirnov, Jarque-Bera (simetria), Agostino (simetria) y Anscombe
(curtosis) pero como No Normal segun el test de Shapiro-Wilks.
Las otras dos no aparecen como Normales en ninguno de los test,
logicamente al tener una asimetria tan fuerte.
He probado transformando mediante Box-Cox pero la ni la raiz cuadadrada,
ni 1/Variable me solucionan el problema y al haber muchos casos con 0 la
logaritmica tampoco me vale.



Asumiendo Normalidad puedo emplear los intervalos de confianza para
"regañar" o "felicitar" a los individuos y Puedo utilizar los percentiles
0.1 y 0,9 para obtener las clasificaciones en cualquier caso (normal o no
normal).

Pero me surgen varias dudas:
-La principal de todas es la metodologia (y paquetes/funciones de R
asociados) para llevar a cabo tarea de clasificacion.Actualmente estoy
valorando hacer la clasificacion mediante intervalos de confianza (en caso
de poder transformar a "normales" las dos ultimas variables), percentiles
o directamente aplicando la desigualdad Chebychev.

-¿Que paquetes me ofrece R para obtener la distribucion de probabilidad
subyacente en una determinada muestra?.


-¿Que test, de los que se ofrecen en R, considerais como los mas potentes
para comprobar si una muestra de estas caracteristicassigue una
determinada distribucion?.Yo utilizo ks.test y shapiro.test pero igual hay
otros mejores en algun paquete que conozcais.Por la construccion de las
variables habia supuesto que las variables debian de seguir una
distribucion U(0,1) pero el test ks solo concluye uniformidad en la
primera variable.


Muchas gracias a tod en s por leer hasta el final del ladrillo


Saludos










-- AVISO LEGAL --

Los datos personales que en esta comunicación aparecen, así como los que 
nuestra
empresa mantiene de Vd. y de su empresa, son tratados con la finalidad de 
mantener
el contacto así como realizar las gestiones que en esta aparecen (Ley 
Orgánica
15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal).
Puede ejercer sus derechos de acceso, rectificación, cancelación y 
oposición
dirigiéndose a atencion.clientes en tasacionesh.com
La utilización de su dirección de correo electrónico por parte de nuestra 
empresa
queda sujeta a las disposiciones de la Ley 34/2002, de Servicios de la 
Sociedad de
la Información y el Comercio Electrónico. Si Vd. recibe comunicación 
comercial por
nuestra parte y desea dejar de recibirla, rogamos nos lo comunique por vía 
electrónica
a través de la dirección atencion.clientes en tasacionesh.com

        [[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




-- 
Saludos,
Carlos Ortega
www.qualityexcellence.es 

-- AVISO LEGAL -- 

Los datos personales que en esta comunicación aparecen, así como los que nuestra 
empresa mantiene de Vd. y de su empresa, son tratados con la finalidad de mantener 
el contacto así como realizar las gestiones que en esta aparecen (Ley Orgánica 
15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal).   
Puede ejercer sus derechos de acceso, rectificación, cancelación y oposición 
dirigiéndose a atencion.clientes en tasacionesh.com 
La utilización de su dirección de correo electrónico por parte de nuestra empresa 
queda sujeta a las disposiciones de la Ley 34/2002, de Servicios de la Sociedad de 
la Información y el Comercio Electrónico. Si Vd. recibe comunicación comercial por 
nuestra parte y desea dejar de recibirla, rogamos nos lo comunique por vía electrónica 
a través de la dirección atencion.clientes en tasacionesh.com
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20140930/2eec183c/attachment.html>


Más información sobre la lista de distribución R-help-es