Re: [R-es] error en matriz de correlación

2022-09-26 Por tema Ricardo Alva
Muchas gracias por la aclaración, ya me estaba preocupando jajajaja.



Enviado desde mi Galaxy



 Mensaje original 
De: Marcelino de la Cruz Rot 
Fecha: 26/9/2022 2:19 a. m. (GMT-05:00)
A: r-help-es@r-project.org
Asunto: Re: [R-es] error en matriz de correlación

Hola Ricardo:

Es correcto lo que dices de declarar las variables según su tipo. El
"problema" con cor() es que explícitamente requiere que las variables
sean numéricas. Sin embargo, cuando calcula el coeficiente de
correlación de Kendall (o el de Spearman) lo hace en función del *orden*
de los valores de esa variable numérica.
Es decir, no es R el que sabe que Kendall es la prueba que corresponde a
tus datos, sino tú como usuario, y por eso te pide que incluyas el
argumento method = "kendall" cuando los datos son ordinales (o cuando
son numéricos pero por su distribución no puedes confiar en la
aproximación de Pearson).

Un saludo,
Marcelino


El 26/09/2022 a las 9:00, Ricardo Alva escribió:
> Amigos gracias por sus respuestas. Disculpen mi ignorancia, pero no se
> supone que antes de que empezar a trabajar con el data frame, no se
> debe de declarar el tipo de variable que le corresponde a cada una y
> así el sistema reconozca si la variable es numérica, ordinal,
> dicotómoca o categorica? Por ejemplo en este caso, si le pongo
> numérica a todas las variables, el sistema como va saber que kendall
> es la prueba que le corresponde a mis datos dado que son ordinales, o
> este tema de numéricas es sólo una excepción para que corra el algoritmo?
>
> Siempre trabajo declarando previamente las variables y no he tenido
> inconvenientes para ejecutar por ejemplo kmedias, kmodas, kprototipe,
> PCA, FAMD, o lo estoy haciendo mal?
>
> Agradesco sus comentarios.
>
>
>
>
>
> Enviado desde mi Galaxy
>
>
>
>  Mensaje original 
> De: Marcelino de la Cruz Rot 
> Fecha: 26/9/2022 1:06 a. m. (GMT-05:00)
> A: r-help-es@r-project.org
> Asunto: Re: [R-es] error en matriz de correlación
>
> Hola Ricardo:
>
> Por precisar lo que dice Emilio, la conversión debe hacerse por
> columnas, por ejemplo:
>
> a <- apply(a, 2, as.numeric)
>
> Un saludo,
> Marcelino
>
>
> El 26/09/2022 a las 7:54, Emilio L. Cano escribió:
> > Hola Ricardo,
> >
> > Tienes que convertir las variables a numéricas, como indica el error
> y la ayuda de la función. Como tus valores están ordenados,
> simplemente convierte con as.numeric() y ya te funcionará.
> >
> > Un saludo,
> >
> > Emilio L. Cano
> > http://emilio.lcano.com
> >
> >
> >
> >
> >> El 26 sept 2022, a las 3:48, Ricardo Alva 
> escribió:
> >>
> >> Amigos buen día.
> >> Estoy intentando generar la matriz de correlaciones por cualquiera
> de los 3 métodos de la función cor, pero siempre me arroja el mismo error.
> >>
> >> cor(a,method = 'kendall')
> >> Error in cor(a, method = "kendall") : 'x' must be numeric
> >>
> >> a es un data frame con 61 filas, compuesto de 5 variables, todas
> ordinales y cargadas desde un archivo de excel que mantiene la
> siguiente forma:
> >> agencia|personeria|constitucion|producto|actividad
> >> 1   1   211
> >> 2   1   511
> >> 2   2   4    15
> >> 2   2   2    41
> >>
> >> He tratado consignado todas las variables como ordinales y luego
> también como factor, pero me sigue saliendo el mismo error, por mas
> que elijo cualquier método de correlación.
> >>
> >> #Convirtiendo todas las variables a factor:
> >> str(a)
> >> 'data.frame': 61 obs. of  5 variables:
> >> $ agencia : Factor w/ 3 levels "1","2","3": 1 2 2 2 2 2 1 2 2 2 ...
> >> $ personeria  : Factor w/ 2 levels "1","2": 1 1 1 1 1 2 1 2 2 2 ...
> >> $ constitucion: Factor w/ 5 levels "1","2","3","4",..: 2 2 2 2 5 2
> 1 3 4 5 ...
> >> $ producto: Factor w/ 2 levels "1","4": 1 1 1 1 1 1 1 1 1 1 ...
> >> $ actividad   : Factor w/ 5 levels "1","2","3","4",..: 1 1 1 1 1 1
> 5 1 3 2 ...
> >>
> >> #Convirtiendo todas las variables a ordinales.
> >> str(a)
> >> 'data.frame': 61 obs. of  5 variables:
> >> $ agencia : Ord.factor w/ 3 levels "1"<"2"<"3": 1 2 2 2 2 2 1 2
> 2 2 ...
> >> $ personeria  : Ord.factor w/ 2 levels "1"<"2": 1 1 1 1 1 2 1 2 

Re: [R-es] error en matriz de correlación

2022-09-25 Por tema Ricardo Alva
Hola buenas.
Estoy tratando de ver el nivel de correlación que existen entre las 5 variables 
que se encuentran detallados en el dataframe, a través de kendall, pero me sale 
ese error. El mismo error me sale si uso pearson o spearman.

El data frame sale desconfigurado en el correo, pero son variables con niveles 
q van desde 1 hasta 5 en algunos casos.



Enviado desde mi Galaxy



 Mensaje original 
De: Jorge I Velez 
Fecha: 25/9/2022 9:01 p. m. (GMT-05:00)
A: Ricardo Alva 
CC: "R-help-es@r-project.org" 
Asunto: Re: [R-es] error en matriz de correlación

Hola Carlos,
Qué quieres hacer exactamente?
Lo que intentas tiene poco sentido.
A lo mejor si nos indicas qué estás buscando sea más fácil ayudarte.
Saludos,
Jorge.-

El El dom, 25 de sep. de 2022 a la(s) 8:48 p. m., Ricardo Alva 
mailto:kalo_a...@hotmail.com>> escribió:
Amigos buen día.
Estoy intentando generar la matriz de correlaciones por cualquiera de los 3 
métodos de la función cor, pero siempre me arroja el mismo error.

cor(a,method = 'kendall')
Error in cor(a, method = "kendall") : 'x' must be numeric

a es un data frame con 61 filas, compuesto de 5 variables, todas ordinales y 
cargadas desde un archivo de excel que mantiene la siguiente forma:
agencia|personeria|constitucion|producto|actividad
1   1   211
2   1   511
2   2   4    15
2   2   2    41

He tratado consignado todas las variables como ordinales y luego también como 
factor, pero me sigue saliendo el mismo error, por mas que elijo cualquier 
método de correlación.

#Convirtiendo todas las variables a factor:
 str(a)
'data.frame': 61 obs. of  5 variables:
 $ agencia : Factor w/ 3 levels "1","2","3": 1 2 2 2 2 2 1 2 2 2 ...
 $ personeria  : Factor w/ 2 levels "1","2": 1 1 1 1 1 2 1 2 2 2 ...
 $ constitucion: Factor w/ 5 levels "1","2","3","4",..: 2 2 2 2 5 2 1 3 4 5 ...
 $ producto: Factor w/ 2 levels "1","4": 1 1 1 1 1 1 1 1 1 1 ...
 $ actividad   : Factor w/ 5 levels "1","2","3","4",..: 1 1 1 1 1 1 5 1 3 2 ...

#Convirtiendo todas las variables a ordinales.
str(a)
'data.frame': 61 obs. of  5 variables:
 $ agencia : Ord.factor w/ 3 levels "1"<"2"<"3": 1 2 2 2 2 2 1 2 2 2 ...
 $ personeria  : Ord.factor w/ 2 levels "1"<"2": 1 1 1 1 1 2 1 2 2 2 ...
 $ constitucion: Ord.factor w/ 5 levels "1"<"2"<"3"<"4"<..: 2 2 2 2 5 2 1 3 4 5 
...
 $ producto: Ord.factor w/ 2 levels "1"<"4": 1 1 1 1 1 1 1 1 1 1 ...
 $ actividad   : Ord.factor  w/ 5 levels "1"<"2"<"3"<"4",..: 1 1 1 1 1 1 5 1 3 
2 ...

Por favor alguien que me pueda decir que estoy haciendo mal, o es que las 
variables en el archivo de excel deben de estar en texto?, lo cual me parecería 
algo raro.


[[alternative HTML version deleted]]

___
R-help-es mailing list
R-help-es@r-project.org<mailto:R-help-es@r-project.org>
https://stat.ethz.ch/mailman/listinfo/r-help-es
--
Sent from my phone. Please excuse my brevity and misspelling.

[[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] error en matriz de correlación

2022-09-25 Por tema Ricardo Alva
Amigos buen día.
Estoy intentando generar la matriz de correlaciones por cualquiera de los 3 
métodos de la función cor, pero siempre me arroja el mismo error.

cor(a,method = 'kendall')
Error in cor(a, method = "kendall") : 'x' must be numeric

a es un data frame con 61 filas, compuesto de 5 variables, todas ordinales y 
cargadas desde un archivo de excel que mantiene la siguiente forma:
agencia|personeria|constitucion|producto|actividad
1   1   211
2   1   511
2   2   4    15
2   2   2    41

He tratado consignado todas las variables como ordinales y luego también como 
factor, pero me sigue saliendo el mismo error, por mas que elijo cualquier 
método de correlación.

#Convirtiendo todas las variables a factor:
 str(a)
'data.frame': 61 obs. of  5 variables:
 $ agencia : Factor w/ 3 levels "1","2","3": 1 2 2 2 2 2 1 2 2 2 ...
 $ personeria  : Factor w/ 2 levels "1","2": 1 1 1 1 1 2 1 2 2 2 ...
 $ constitucion: Factor w/ 5 levels "1","2","3","4",..: 2 2 2 2 5 2 1 3 4 5 ...
 $ producto: Factor w/ 2 levels "1","4": 1 1 1 1 1 1 1 1 1 1 ...
 $ actividad   : Factor w/ 5 levels "1","2","3","4",..: 1 1 1 1 1 1 5 1 3 2 ...

#Convirtiendo todas las variables a ordinales.
str(a)
'data.frame': 61 obs. of  5 variables:
 $ agencia : Ord.factor w/ 3 levels "1"<"2"<"3": 1 2 2 2 2 2 1 2 2 2 ...
 $ personeria  : Ord.factor w/ 2 levels "1"<"2": 1 1 1 1 1 2 1 2 2 2 ...
 $ constitucion: Ord.factor w/ 5 levels "1"<"2"<"3"<"4"<..: 2 2 2 2 5 2 1 3 4 5 
...
 $ producto: Ord.factor w/ 2 levels "1"<"4": 1 1 1 1 1 1 1 1 1 1 ...
 $ actividad   : Ord.factor  w/ 5 levels "1"<"2"<"3"<"4",..: 1 1 1 1 1 1 5 1 3 
2 ...

Por favor alguien que me pueda decir que estoy haciendo mal, o es que las 
variables en el archivo de excel deben de estar en texto?, lo cual me parecería 
algo raro.


[[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] Crear Cluster

2021-01-27 Por tema ricardo alva
Hola amigos.
Soy algo nuevo en este tema de R, pero estoy aprendiendo a empujones porque el 
tiempo apremia. Necesito segmentar 165000 personas con los siguientes datos, 
los cuales los tengo en excel en un archivo llamado Data, el cual tiene la 
siguiente forma.

Nombre
G�nero  EdadR_Edad  Domilicio   Actividad econ�mica Ingresos 
mensuales  R_Ingresos  Categoria Persona
Pepito  1   24  2   110423  12002   3
Juanita 0   56  4   1021140 34504   16
Pedro   1   35  3   110445  300 1   4


Especificaciones:

  *   G�nero: 1 =Masculino y 0=Femenino
  *   R_Edad: La edad recodificada en 9 categor�as.
  *   Domilicio: C�digos que representan distintas regiones del pa�s. Son 167 
categor�as en total.
  *   Actividad econ�mica: Clasificado en 164 categor�as.
  *   R_Ingresos: Ingresos mensuales recodificados en 15 categor�as.
  *   Categor�a Persona: Clasificado en 19 categor�as.

Estuve intentando usar la distancia de gower(al ser variables mixtas), con las 
variables G�nero, R_Edad, Domicilio, Actividad Econ�mica, R_Ingresos y 
Categor�a Persona, para luego poder usar la funci�n kmeans y PAM, para poder 
comparar los resultados, pero me arroja que mis variables son character y no 
continua con el proceso. Habia le�do tambi�n que la funci�n clustMixType 
tambi�n es muy �til cuando tienes datos nominales con bastantes categor�as, 
pero no entiendo como armar la sintaxis; en realidad se me hace  dif�cil 
entender la sintaxis de todo jajajaja.

Si alguien con tiempo, podr�a indicarme como ser�a la sintaxis para realizar el 
an�lisis con los m�todos antes indicados y as� poder evaluar el mejor n�mero de 
cluster y la consistencia de �stos se los agradecer�a mucho.


[[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] Crear intervalos

2021-01-05 Por tema ricardo alva
Hola amigos buenas noches. Tengo dos consultas, a ver si me pueden ayudar. 1.- Tengo una data de mas de 100 mil valores que representan los ingresos mensuales de una población, los cuales deseo agruparlos en rangos. Como los datos son demasiado atípicos, que ni con transformaciones los logros normalizar, he leído en Internet que para estos tipos de datos se pueden establecer sus intervalos a través de los cortes naturales de jenks. Sabrán si dicho algoritmo se encuentra en R y como se utiliza? 2.- Alguien sabrá cómo desarrollar la distancia de Gower pero en excel? Agradezco de antemano su apoyo y disculpen la molestia, pero en la web no he podido encontrar algo que me pueda ayudar en lo que necesito. Enviado desde mi Movistar HUAWEI P smart 2019___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es


[R-es] Análisis de datos extremadamente atípicos

2020-07-19 Por tema ricardo alva
Hola amigos buenas noches. Estoy intentando comparar la distribución de una misma variable continúa pero en dos lapsos de tiempo diferentes. Lo malo es que los datos son demasiados atípicos y a través de box plots no se puede apreciar por la gran cantidad de atípicos que hay, lo que hace que las cajas no se aprecien y sólo se visualice puros atípicos amontonados. Como podría determinar si de manera global los datos han aumentado o disminuido de valor, considerando que las mediciones corresponden a individuos diferentes. Que gráficos me pueden servir para esto? Enviado desde mi Movistar HUAWEI P smart 2019___
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es