Algebra de matrices con lenguaje R

Si se tiene un objeto matrix y un ambiente minimalista en donde no quiero instalar la hoja de cálculo de Open Office (porque me parece pesada), no necesito tener código compilado, por ejemplo, para multiplicar matrices si tengo instalado el intérprete de R. Se puede hacer con el operador %*%. Supongamos que queremos multiplicar la matriz:


1 2 3
2 1 4
3 4 1

por si misma, creamos el objeto matriz X con:

X <- matrix(data=0, 3, 3) [Enter]

y luego editamos su contenido con:

data.entry(X) [Enter]

para obtener la matriz señalada al inicio.

Para multiplicar X * X, asignandola al objeto Y, se tendría simplemente:

Y <- X%*%X [Enter]

Para visualizarla Y[Enter]. Más fácil imposible.

Por otra parte, si queremos encontrar la inversa de la matriz X esto se realiza con la función solve(). Si invocamos solve(X) [Enter], el resultado que tendríamos en pantalla sería:

[,1] [,2] [,3]
var1 -0.75 0.5 0.25
var2 0.50 -0.4 0.10
var3 0.25 0.1 -0.15

La función solve() puede usarse también para resolver sistemas lineales. Como ejemplo podemos referir el primero que se encuentra en:

Estimación de datos acumulados (englobados) de precipitación que corresponde a:

P1 + P2 + P3 = 608.9
137.1*P1 - 111.5*P2 + 0 = 0
171.7*P1 + 0 - 111.5*P3 = 0

Creamos el objeto a con:

a <- matrix(data=0, 3, 3) [Enter]

y lo editamos con data.entry(a) para obtener la matriz del sistema:

  1      1       1
137.1 -111.5     0
171.7    0    -111.5

Creamos el arreglo b que contiene los términos que se encuentran en la parte derecha de la igualdad:

b<- c(608.9, 0, 0)

Finalmente, resolvemos el sistema con solve(a,b) resultando en:

[1] 161.5331 198.6205 248.7464

Otras funciones que pueden utilizarse, entre varias, son t() para la transpuesta; eigen() para el arreglo de autovalores y autovectores y qr() para la descomposición qr.

Artículos relacionados:

Estadística básica con R

Lenguaje R en Linux

Esta entrada fue publicada en Lenguaje R. Guarda el enlace permanente.

2 respuestas a Algebra de matrices con lenguaje R

  1. Pingback: Estimación de datos acumulados (englobados) de precipitación: caso mensual |

  2. Pingback: Instalar R (lenguaje estadístico) en SuSE 10.2 |

Responder

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s