
Definiremos primero:
\[ s_{jk}=\frac{1}{n-1}\sum_{i=1}^n(y_{ij}-\bar{y}_{j})(y_{ik}-\bar{y}_k)=\frac{1}{n-1}\sum_{i=1}^n\Delta y_{ij}\Delta y_{ik} \]
Lo que se requiere es demostrar:
\[ \frac{1}{n-1}\sum_{i=1}^n(\vec{y}_i-\bar{\vec{y}})(\vec{y}_i-\bar{\vec{y}})^t=\begin{bmatrix} s_{11} & s_{12} & s_{13}\\ s_{21} & s_{22} & s_{23}\\ s_{31} & s_{32} & s_{33} \end{bmatrix} \]
Entonces:
\[ \frac{1}{n-1}\sum_{i=1}^n(\vec{y}_i-\bar{\vec{y}})(\vec{y}_i-\bar{\vec{y}})^t= \frac{1}{n-1}\sum_{i=1}^n \begin{bmatrix} \Delta y_{i1}\\ \Delta y_{i2}\\ \Delta y_{i3}\end{bmatrix} \begin{bmatrix} \Delta y_{i1} & \Delta y_{i2} & \Delta y_{i3}\end{bmatrix} \] Por la definición de multiplicación de matrices primero y despues por la definición de adición de estas: \[ =\frac{1}{n-1}\sum_{i=1}^n \begin{bmatrix} \Delta y_{i1}\Delta y_{i1} & \Delta y_{i1}\Delta y_{i2} & \Delta y_{i1}\Delta y_{i3}\\ \Delta y_{i2}\Delta y_{i1} & \Delta y_{i2}\Delta y_{i2} & \Delta y_{i2}\Delta y_{i3}\\ \Delta y_{i3}\Delta y_{i1} & \Delta y_{i3}\Delta y_{i2} & \Delta y_{i3}\Delta y_{i3} \end{bmatrix} =\frac{1}{n-1} \begin{bmatrix} \sum_{i=1}^n\Delta y_{i1}\Delta y_{i1} & \sum_{i=1}^n\Delta y_{i1}\Delta y_{i2} & \sum_{i=1}^n\Delta y_{i1}\Delta y_{i3}\\ \sum_{i=1}^n\Delta y_{i2}\Delta y_{i1} & \sum_{i=1}^n\Delta y_{i2}\Delta y_{i2} & \sum_{i=1}^n\Delta y_{i2}\Delta y_{i3}\\ \sum_{i=1}^n\Delta y_{i3}\Delta y_{i1} & \sum_{i=1}^n\Delta y_{i3}\Delta y_{i2} & \sum_{i=1}^n\Delta y_{i3}\Delta y_{i3} \end{bmatrix} \] Por la definición de una matriz por un escalar, y la igualdad previamente definida. \[ =\begin{bmatrix} \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i1}\Delta y_{i1} & \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i1}\Delta y_{i2} & \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i1}\Delta y_{i3}\\ \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i2}\Delta y_{i1} & \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i2}\Delta y_{i2} & \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i2}\Delta y_{i3}\\ \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i3}\Delta y_{i1} & \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i3}\Delta y_{i2} & \frac{1}{n-1}\sum_{i=1}^n\Delta y_{i3}\Delta y_{i3} \end{bmatrix} = \begin{bmatrix} s_{11} & s_{12} & s_{13}\\ s_{21} & s_{22} & s_{23}\\ s_{31} & s_{32} & s_{33} \end{bmatrix} \] L.C.D.D.
Use the calcium data in Table 3.3
M2 <- matrix(nrow = 10, ncol = 3, dimnames = list(1:10, c("y1", "y2", "y3")))
M2[, 1] <- c(35, 35, 40, 10, 6, 20, 35, 35, 35, 30)
M2[, 2] <- c(3.5, 4.9, 30, 2.8, 2.7, 2.8, 4.6, 10.9, 8, 1.6)
M2[, 3] <- c(2.8, 2.7, 4.38, 3.21, 2.73, 2.81, 2.88, 2.9, 3.28, 3.2)
Así está en 3.29
\[ \mathbf{S}=\frac{1}{n-1}\mathbf{Y}'\left(\mathbf{I}-\frac{1}{n}\mathbf{J} \right)\mathbf{Y} \]
Entonces:
S2 <- (1/(nrow(M2) - 1)) * t(M2) %*% (diag(rep(1, nrow(M2))) - ((1/nrow(M2)) *
matrix(1, nrow = 10, ncol = 10))) %*% M2
S2
## y1 y2 y3
## y1 140.544 49.680 1.9412
## y2 49.680 72.248 3.6761
## y3 1.941 3.676 0.2501
(3.34) \[ r_{jk}=\frac{s_{jk}}{\sqrt{s_{jj}s_{kk}}}=\frac{s_{jk}}{s_js_k} \] (3.35) \[ R=(r_{jk})=\begin{bmatrix} 1 & r_{12} & ...& r_{1p}\\ r_{12} & 1 & ...& r_{2p}\\ \vdots & \vdots & & \vdots\\ r_{p1} & r_{p2} & ...& 1 \end{bmatrix} \]
R2 <- matrix(nrow = 3, ncol = 3, dimnames = dimnames(S2))
for (i in 1:3) {
for (j in 1:3) {
R2[i, j] <- S2[i, j]/sqrt(S2[i, i] * S2[j, j])
}
}
R2
## y1 y2 y3
## y1 1.0000 0.4930 0.3274
## y2 0.4930 1.0000 0.8648
## y3 0.3274 0.8648 1.0000
(3.37) \[ D_S^{-1}SD_S^{-1} \]
solve(diag(sqrt(diag(S2)))) %*% S2 %*% solve(diag(sqrt(diag(S2))))
## [,1] [,2] [,3]
## [1,] 1.0000 0.4930 0.3274
## [2,] 0.4930 1.0000 0.8648
## [3,] 0.3274 0.8648 1.0000
Use the calcium data in Table 3.3
det(S2)
## [1] 460
sum(diag(S2))
## [1] 213
For the variables in Table 3.3, define \( z = 3y_1 - y_2 + 2y_3 = (3,-1, 2)y \).
z4 <- M2 %*% t(t(c(3, -1, 2)))
Find \( \bar{z} \) and \( s_Z^2 \) in two ways:
(3.1) \[ \bar{y}=\frac{1}{n}\sum_{i=1}^n y_i \]
(1/length(z4)) * sum(z4)
## [1] 83.3
(3.5) \[ s^2=\frac{\sum_{i=1}^n y_i^2-n\bar{y}^2}{n-1} \]
(sum(z4^2) - length(z4) * mean(z4)^2)/(length(z4) - 1)
## [1] 1049
# Media
c(3, -1, 2) %*% t(t(colMeans(M2)))
## [,1]
## [1,] 83.3
# Varianza
c(3, -1, 2) %*% S2 %*% t(t(c(3, -1, 2)))
## [,1]
## [1,] 1049
Caras de Chernoff en Wikipedia:
Chernoff faces, invented by Herman Chernoff, display multivariate data in the shape of a human face. The individual parts, such as eyes, ears, mouth and nose represent values of the variables by their shape, size, placement and orientation. The idea behind using faces is that humans easily recognize faces and notice small changes without difficulty. Chernoff faces handle each variable differently. Because the features of the faces vary in perceived importance, the way in which variables are mapped to the features should be carefully chosen (e.g. eye size and eyebrow-slant have been found to carry significant weight).
Chernoff faces themselves can be plotted on a standard X-Y graph; the faces can be positioned X-Y based on the two most important variables, and then the faces themselves represent the rest of the dimensions for each item. Edward Tufte, presenting such a diagram, says this kind of Chernoff face graph would “reduce well, maintaining legibility even with individual areas of .05 square inches as shown…with cartoon faces and even numbers becoming data measures, we would appear to have reached the limit of graphical economy of presentation, imagination, and let it be admitted, eccentricity.”
Gráfica de estrellas (Radar plot), también en Wikipedia:
The radar chart is a chart and/or plot that consists of a sequence of equi-angular spokes, called radii, with each spoke representing one of the variables. The data length of a spoke is proportional to the magnitude of the variable for the data point relative to the maximum magnitude of the variable across all data points. A line is drawn connecting the data values for each spoke. This gives the plot a star-like appearance and the origin of one of the popular names for this plot. The star plot can be used to answer the following questions:
Which observations are most similar, i.e., are there clusters of observations? (Radar charts are used to examine the relative values for a single data point (e.g., point 3 is large for variables 2 and 4, small for variables 1, 3, 5, and 6) and to locate similar points or dissimilar points.)
Are there outliers?
Radar charts are a useful way to display multivariate observations with an arbitrary number of variables. Each star represents a single observation. Typically, radar charts are generated in a multi-plot format with many stars on each page and each star representing one observation.[3] The star plot was first used by Georg von Mayr in 1877. Radar charts differ from glyph plots in that all variables are used to construct the plotted star figure. There is no separation into foreground and background variables. Instead, the star-shaped figures are usually arranged in a rectangular array on the page. It is somewhat easier to see patterns in the data if the observations are arranged in some non-arbitrary order (if the variables are assigned to the rays of the star in some meaningful order).
D5 <- data.frame(row.names = c("Missouri", "Maryland", "Kentucky", "Lousiana",
"Mississipi", "South Carolina"), x1 = c(35, 36, 40, 7, 4, 2), x2 = c(38,
37, 40, 11, 3, 1), x3 = c(48, 41, 42, 14, 4, 4), x4 = c(50, 46, 54, 29,
25, 49), x5 = c(36, 35, 36, 57, 87, 59), x6 = c(45, 42, 44, 23, 14, 39))
names(D5) <- c(1932, 1936, 1940, 1960, 1964, 1968)
Para las caras de Chernoff se utilizó el paquete aplpack y nos apoyamos en un tutorial de Flowing data
library(aplpack)
## Loading required package: tcltk
faces(D5, face.type = 1, main = "Porcentaje de votos republicanos por estado",
print.info = 0, nrow.plot = 1, ncol.plot = 6)
En este primer caso se grafican los datos por estado, y para la interpretación que me parece no es nada fácil debemos apoyarnos en la descripción de las características de la cara:
faces(D5, plot.faces = 0)
## effect of variables:
## modified item Var
## "height of face " "1932"
## "width of face " "1936"
## "structure of face" "1940"
## "height of mouth " "1960"
## "width of mouth " "1964"
## "smiling " "1968"
## "height of eyes " "1932"
## "width of eyes " "1936"
## "height of hair " "1940"
## "width of hair " "1960"
## "style of hair " "1964"
## "height of nose " "1968"
## "width of nose " "1932"
## "width of ear " "1936"
## "height of ear " "1940"
También lo podemos sacar por año:
faces(D5, face.type = 1, byrow = 1, main = "Porcentaje de votos republicanos por año",
print.info = 0, nrow.plot = 1, ncol.plot = 6)
Pero lo que más me gustó fue ¡Santa!, y eso que no es mi personaje favorito:
faces(D5, face.type = 2, main = "¡Santa!", print.info = 0, nrow.plot = 1, ncol.plot = 6,
par(bg = "#9370DB"))
Ahora para las gráficas de estrella utilizamos la la función stars, con los mismos datos:
stars(D5, nrow = 1, ncol = 7, xpd = 1, main = "Porcentaje de votos republicanos por estado",
key.loc = c(-0.6, 2.35), mar = c(1, 12, 1, 1))
Por una parte la interpretación de estas gráficas es mucho mas directo que el de las caras, y eso es algo bueno; por el lado negativo la función en R no es muy versatil, por ejemplo para las etiquetas de cada radio, o los colores de las líneas, incluso para la estrella guía es bastante complicado, por ahí existen otros paquetes que me parecen tienen mejores herramientas; pero lo peor es que no trae la función de Santa.
stars(t(D5), nrow = 1, ncol = 7, xpd = 1, main = "Porcentaje de votos republicanos por año",
key.loc = c(-0.6, 2.35), mar = c(1, 13, 1, 1))
Suponga que \( \underline{Y}\sim N_3(\underline{\mu},\Sigma) \) donde:
\[ \underline{\mu}=\begin{bmatrix}3\\1\\4\end{bmatrix}\;,\; \Sigma=\begin{bmatrix} 6 & 1 &-2\\ 1 & 13 & 4 \\ -2 & 4 & 4 \end{bmatrix} \]
m6 <- t(t(c(3, 1, 4)))
S6 <- matrix(c(6, 1, -2, 1, 13, 4, -2, 4, 4), ncol = 3, byrow = 1)
En Rencher 4.2.1.a encontramos: \( \left\{\underline{y}\sim N_p(\underline{\mu},\Sigma)\right\}\rightarrow \underline{a}'\underline{y}\sim N(\underline{a}'\underline{\mu},\underline{a}'\Sigma\underline{a}) \)
En este caso \( z=\underline{a}'\underline{y} \), con \( a'=\begin{bmatrix}2 & -1 & 3\end{bmatrix} \)
De tal manera que \( z\sim N \) con parámetros:
a6 <- t(t(c(2, -1, 3)))
# media
t(a6) %*% m6
## [,1]
## [1,] 17
# Varianza
t(a6) %*% S6 %*% a6
## [,1]
## [1,] 21
Es decir que:
\[ z\sim N(17,21) \]
Se trata de combinaciones lineales de las variables en la normal trivariada previa en Rencher 4.2.1.b encontramos:
If \( A \) is a constant \( q × p \) matrix of rank \( q \), where \( q \leq p \), the \( q \) linear combinations in \( A\underline{y} \) have a multivariate normal distribution:
\[ \left\{\underline{y}\sim N_p(\underline{\mu},\Sigma)\right\}\rightarrow A\underline{y}\sim N_q(A\underline{\mu},A\Sigma A') \]
En nuestro caso definiremos \( A=\begin{bmatrix} 1 & 1 & 1\\1&-1&2\end{bmatrix} \)
A6b <- matrix(c(1, 1, 1, 1, -1, 2), byrow = 1, nrow = 2)
De tal manera que \( A\underline{y} \) cuyas variables son \( z_1 \) y \( z_2 \) tiene una distribución normal bivariada, con parámetros:
# media
A6b %*% m6
## [,1]
## [1,] 8
## [2,] 10
# Varianza
A6b %*% S6 %*% t(A6b)
## [,1] [,2]
## [1,] 29 -1
## [2,] -1 9
Es decir que: \[ \underline{\mu}_Z=\begin{bmatrix}8\\10\end{bmatrix}\;,\; \Sigma_Z=\begin{bmatrix}29&-1\\-1&9\end{bmatrix} \]
Si bien podríamos integras con respecto a \( y_1 \) y \( y_3 \), también podemos interpretar a \( y_2 \) como una combinación lineal de \( \underline{y} \) y utilizar el mismo teorema de el inciso a).
En este caso definimos \( a_c'=\begin{bmatrix}0 & 1 & 0\end{bmatrix} \), y se distribuye como normal univariada con parámetros:
a6c <- t(t(c(0, 1, 0)))
# media
t(a6c) %*% m6
## [,1]
## [1,] 1
# Varianza
t(a6c) %*% S6 %*% a6c
## [,1]
## [1,] 13
Es decir: \[ y_2\sim N(1,13) \]
Lo cual se puede obtener directamente del vector de medias y de la matriz de varianzas y covarianzas, pero ahora lo sabemos (bueno yo).
Utilizando la propiedad en b) definimos \( A_c=\begin{bmatrix} 1 & 0 & 0\\0&0&1\end{bmatrix} \)
A6d <- matrix(c(1, 0, 0, 0, 0, 1), byrow = 1, nrow = 2)
De tal manera que \( A_c\underline{y} \) cuyas variables son \( y_1 \) y \( y_3 \) tiene una distribución normal bivariada, con parámetros:
# media
A6d %*% m6
## [,1]
## [1,] 3
## [2,] 4
# Varianza
A6d %*% S6 %*% t(A6d)
## [,1] [,2]
## [1,] 6 -2
## [2,] -2 4
Es decir que: \[ \underline{\mu}_{13}=\begin{bmatrix}3\\4\end{bmatrix}\;,\; \Sigma_{13}=\begin{bmatrix}6&-2\\-2&4\end{bmatrix} \]
Que también se pudo haber obtenido directamente del vector de medias y la matriz de varianza y covarianzas, como un menor, excluyendo los valores relacionados con \( y_2 \).
Investigar como verificar normalidad multivariada
Resulta que la normalidad multivariada no es tan fácilmente verificable como lo es la univariada, no se pueden realizar pruebas de hipótesis con los cuantiles, o las gráficas de normalidad, entre otras cosas por que la dispersión de los valores es mucho más amplia. Además el que las distribuciones marginales de una distribución p-variada sean normales, no implica que la distribución conjunta sea normal p-variada. Si bien el teorema central del límite sigue aplicando, por lo cual en el caso de muestras grandes (que de entrada para un análisis multivariado es importatne) el supuesto no es indispensable, aunque sí deseable.
Revisamos dos textos el ya citado de Rencher, y adicionalmente el de Johnsons y Wychern, encontramos varias alternativas, se presentan a continuación de manera resumida:
Se parte del hecho de que los datos de una distribución normal bivariada se distribuyen en forma de elipse, y en el caso de la trivariada como una nube en forma de balón de rugby. Entonces se trata de gráficar las combinaciones de pares de variables de la p-variada, y verificar que tengan un comportamiento lineal, en forma de elipse. En el caso de la trivariada es construir una gráfica tridimensional-interactiva y verificar que se encuentren en una nuve con la forma ya mencionada.
Una extensión de este método se encuentra en J&W, donde se construye una elipse para cada par, y se evalua la proporción de datos dentro de la elipse esperada, y se sospecha falta de normalidad cuando menos del 50% se encuentra dentro de la elipse, con los estimadores de los parámetros se obtiene:
\[ (\underline{x}-\underline{\bar{x}})'S^{-1}(\underline{x}-\underline{\bar{x}})\leq\chi_2^2(0.5) \]
La ecuación anterior nos da distancias cuadradas con respecto al centro de la elipse (i.e. \( \underline{\hat{\mu}} \)), que se distribuyen aproximadamente como una ji cuadrada, sin embargo Rencher mencionan que la aproximación no es buena y el uso de pruebas de hipótesis con esta aproximación conlleva a conclusiones muchas veces erroneas. Sin embargo J&W proponen en lugar de una prueba de hipótesis la construcción de una gráfica, de ji-cuadrada (o gamma), que es una gráfica de cuantil-cuantil. Donde se espera que las distancias formen una línea que pase por el origen. Y de hecho hace un par de años utilicé esta, aquí está el código utilizado entonces (hoy lo haría más sintético y en una función, pero bueno):
e26 <- t(matrix(c(1, 2, 3, 3, 4, 5, 6, 8, 9, 11, 18.95, 19, 17.95, 15.54, 14,
12.95, 8.94, 7.49, 6, 3.99), nrow = 2, byrow = 1))
colnames(e26) <- c("x1", "x2")
# vector de medias y matriz de varianzas y cov
m26 <- matrix(c(mean(e26[, 1]), mean(e26[, 2])), nrow = 2)
v26 <- var(e26)
# distancias estadísticas
d26 <- (c(t(e26[1, ] - m26) %*% solve(v26) %*% (e26[1, ] - m26), t(e26[2, ] -
m26) %*% solve(v26) %*% (e26[2, ] - m26), t(e26[3, ] - m26) %*% solve(v26) %*%
(e26[3, ] - m26), t(e26[4, ] - m26) %*% solve(v26) %*% (e26[4, ] - m26),
t(e26[5, ] - m26) %*% solve(v26) %*% (e26[5, ] - m26), t(e26[6, ] - m26) %*%
solve(v26) %*% (e26[6, ] - m26), t(e26[7, ] - m26) %*% solve(v26) %*%
(e26[7, ] - m26), t(e26[8, ] - m26) %*% solve(v26) %*% (e26[8, ] - m26),
t(e26[9, ] - m26) %*% solve(v26) %*% (e26[9, ] - m26), t(e26[10, ] - m26) %*%
solve(v26) %*% (e26[10, ] - m26)))
# valor de c^2
c26 <- qchisq(0.5, 2)
# identificando los que caen en la elipse de 0.5 proporción de datos que
# caen al 50%
length(d26[d26 < c26])/length(d26)
## [1] 0.5
# c) gráfica cuantil-cuantil
qq26 <- data.frame(sort(d26), c(1:10))
colnames(qq26) <- c("dist", "orden")
attach(qq26)
qq26$chiq <- qchisq((qq26$orden - 0.5)/10, 2)
plot(qq26$chiq, qq26$dist, xlab = "cuantiles chisq", ylab = "distancias estadísticas",
main = "gráfica de probabilidad Chisq")
Como ya se mencionó Rencher argumenta que las distancias cuadradas aproximadas a una gamma (ji-cuadrada) no son buenas, en su lugar utilizando las mismas distancias el sugiere una aproximación a la distribución beta utilizando la siguiente transformación:
\[ u_i=\frac{nD_i^2}{(n-1)^2} \]
Donde:
\( D_i^2=(\underline{x}-\underline{\bar{x}})'S^{-1}(\underline{x}-\underline{\bar{x}}) \)
\( i=1,2,...,n \)
Y se construye una gráfica de las mismas características de la de la \( \chi^2 \) que se muestra arriba.
Rencher también menciona la generalización de las estimaciones de los momentos de tercer orden, que en el caso de la normal son cero, por lo que valores lejanos al cero suponen falta de normalidad.
A mi me gustan las gráficas bivariadas de dispersión, son un tanto mas flexibles y directas.
Considere los datos del problema 5.11
Y8 <- matrix(c(6, 10, 6, 12, 5, 14, 10, 9), byrow = 1, ncol = 2)
a) Pruebe: \( H_0:\underline{\mu}=\begin{bmatrix}6\\11\end{bmatrix} \), con \( \Sigma \) desconocida. Use \( T^2 \) de Hotelling
El estadístico de prueba es:
\[ T^2=n(\underline{\bar{y}}-\underline{\mu}_0)'S^{-1}(\underline{\bar{y}}-\underline{\mu}_0)\sim T^2_{\alpha,p,n-1} \]
Para este caso específico: \( n=4,p=2 \)
Y su correspondiente valor de rechazo es: \( T^2_{0.05,2,3}=57 \), y las medias muestrales son: \( \underline{\bar{y}}=\begin{bmatrix}6.75\\11.25\end{bmatrix} \)
m8 <- t(t(c(6, 11)))
nrow(Y8) * t((t(t(colMeans(Y8))) - m8)) %*% solve(var(Y8)) %*% (t(t(colMeans(Y8))) -
m8)
## [,1]
## [1,] 2.057
Es decir que \( T^2=2.0566 \). Y \( T^{2}< T^{2}_{0.05,2,3} \), por tanto no existen elementos para rechazar la hipótesis de que la medias poblacionales son 6, y 11.
b) Dibuje la región de aceptación y rechazo.
library(ellipse)
## Warning: package 'ellipse' was built under R version 3.0.3
plot(ellipse(var(Y8), centre = m8), type = "l", xlim = c(0, 12), ylim = c(4,
18))
polygon(ellipse(var(Y8), centre = m8, npoints = 500), col = rgb(0.501, 0.501,
1, 1))
polygon(ellipse(var(Y8)/nrow(Y8), centre = m8), lty = 2, density = 10)
points(as.vector(m8)[1], as.vector(m8)[2], col = "red", pch = 16)
points(Y8, col = "white", pch = 4)
points(colMeans(Y8)[1], colMeans(Y8)[2], col = "green", pch = 16)
En la gráfica la parte morada muestra la región de aceptación de la hipótesis nula, la parte fuera de la elipse es la región de rechazo. El punto rojo es el centro de la elipse, y es el vector de la hipótesis nula, el punto verde es el vector de medias de la muestra, se utilizó \( S \) como estimador de la varianza. Los puntos blancos son los valores de la muestra.
Aquí lo interesante es que en la elipse morada se utilizó directamente la matriz de varianzas y covarianzas muestrales, pero en la que se encuentra sombreada se trata de un ajuste dividiendo por el tamaño de la muestra, que es como se encuentra en el docuemento que recibimos durante clase. Y la verdad no se cual es la correcta, aunque para este caso particular me parece que no hace diferencia.
Adicionalmente hay que señalar que la función ellipse utiliza una función de distribución \( \chi^2 \) y no propiamente la \( T^2 \) de Hottelling, sin embargo cuando la muestra tiende a infinito esta se aproxima a una ji.