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

Jorge I Velez jorge|v@nve|ez @end|ng |rom gm@||@com
Lun Sep 26 17:46:41 CEST 2022


Ricardo,

No sé cuál es el objetivo del análisis de correlación y entiendo que la
respuesta de Marcelino responde a lo que preguntas.  Sin embargo, yendo un
poco más allá, me pregunto la validez de lo que quieres hacer, sobretodo
con la estructura de datos que tienes a la mano.

Al parecer tienes medidas repetidas --- tiene sentido *esa *matriz de
correlación que quieres calcular?   Quizás esa sea la primera pregunta que
debes resolver.

Saludos,
Jorge.-




On Mon, Sep 26, 2022 at 7:12 AM Ricardo Alva <kalo_alva using hotmail.com> wrote:

> Muchas gracias por la aclaración, ya me estaba preocupando jajajaja.
>
>
>
> Enviado desde mi Galaxy
>
>
>
> -------- Mensaje original --------
> De: Marcelino de la Cruz Rot <marcelino.delacruz using urjc.es>
> Fecha: 26/9/2022 2:19 a. m. (GMT-05:00)
> A: r-help-es using 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 <marcelino.delacruz using urjc.es>
> > Fecha: 26/9/2022 1:06 a. m. (GMT-05:00)
> > A: r-help-es using 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 <Kalo_Alva using 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 2 1 1
> > >> 2 1 5 1 1
> > >> 2 2 4        1 5
> > >> 2 2 2        4 1
> > >>
> > >> 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 using r-project.org
> > >> https://stat.ethz.ch/mailman/listinfo/r-help-es
> > > _______________________________________________
> > > R-help-es mailing list
> > > R-help-es using r-project.org
> > > https://stat.ethz.ch/mailman/listinfo/r-help-es
> >
> >
> > --
> > Marcelino de la Cruz Rot
> > Depto. de Biología y Geología
> > Física y Química Inorgánica
> > Universidad Rey Juan Carlos
> > Móstoles España
> >
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es using r-project.org
> > https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
> --
> Marcelino de la Cruz Rot
> Depto. de Biología y Geología
> Física y Química Inorgánica
> Universidad Rey Juan Carlos
> Móstoles España
>
> _______________________________________________
> R-help-es mailing list
> R-help-es using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>         [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>

	[[alternative HTML version deleted]]



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