[R-es] Clasificacion de individuos

jluis.gilsanz en tasacionesh.com jluis.gilsanz en tasacionesh.com
Mar Sep 30 12:23:31 CEST 2014


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



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