PaulaMorBla14 / TFG-Baloncesto

Métodos estadísticos aplicados al baloncesto
0 stars 1 forks source link

Warning en la matriz de correlación #20

Closed PaulaMorBla14 closed 2 years ago

PaulaMorBla14 commented 2 years ago

Me aparece un warning diciendo:

In cor(x) : the standard deviation is zero

https://github.com/PaulaMorBla14/TFG-Baloncesto/blob/9f86d010b14c2c251e5dafad4a37e119f524de77/TFG_MetodosEstadisticosBaloncesto.Rnw#L588

solmos commented 2 years ago

El error te indica dónde está el problema. Si un vector de tu matriz x tiene el mismo valor en todos sus elementos, no es posible calcular la correlación. Si miras la fórmula para el coeficiente de correlación de Pearson, verás que las desviaciones típicas están en el denominador y por lo tanto si alguna es cero no puede calcularse.

x <- c(0, 0, 0)
y <- c(0, 1, 1)
z <- c(1, 0, 1)
m <- matrix(c(x, y, z), nrow = 3)
cor(m)
     [,1] [,2] [,3]
[1,]    1   NA   NA
[2,]   NA  1.0 -0.5
[3,]   NA -0.5  1.0
Warning message:
In cor(m) : the standard deviation is zero

Puedes calcular la desviación típica para cada columna de x y ver cuales tienen desviación 0.

apply(m, 2, sd)
[1] 0.0000000 0.5773503 0.5773503