Cómo hacer operaciones aritméticas matriz en la r

Aparte de los operadores aritméticos clásicos, R contiene un gran conjunto de operadores y funciones para realizar una amplia serie de operaciones con matrices. Muchas de estas operaciones se utilizan en las matemáticas avanzadas, por lo que nunca ellos pueden necesitar. Algunos de ellos pueden venir en bastante práctico, sin embargo, si es necesario dar la vuelta alrededor de los datos o si desea calcular algunas estadísticas ti mismo.

Video: *Operaciones básicas con números reales

Transponer una matriz en R

Volteando alrededor de una matriz por lo que las filas se convierten en columnas y viceversa es muy fácil en R. La t () la función (que significa transponer) Hace todo el trabajo por usted:

Video: MULTIPLICACIÓN DE MATRICES

gt; t (first.matrix) [, 1] [, 2] [, 3] [1,] 1 2 3 [2], 4 5 6 [3,] 7 8 9 [4,] 10 11 12

Puede probar esto con un vector, también. Como matrices son leídos y por columnas llenas, no debería ser una sorpresa que la t () función ve un vector como una matriz de una sola columna. La transpuesta de un vector es, por lo tanto, una matriz de una sola fila:

gt; t (01:10) [, 1] [, 2] [, 3] [, 4] [, 5] [, 6] [7] [8] [9] [, 10] [1], 1 2 3 4 5 6 7 8 9 10

Se puede decir que esto es una matriz por las dimensiones. Esta información parece trivial por cierto, pero imagina que está seleccionando una sola fila de una matriz y su transposición. A diferencia de lo que cabría esperar, se obtiene una fila en lugar de una columna:

Video: Álgebra lineal y matrices – 2. Operaciones básicas con matrices

gt; t (first.matrix [2,]) [, 1] [, 2] [, 3] [, 4] [1], 2 5 8 11

Invertir una matriz en R

Contrariamente a su intuición, invertir una matriz no es hecho por elevándolo a la potencia de -1, R se aplica normalmente los operadores aritméticos elemento a elemento en la matriz. Por lo tanto, el comando first.matrix ^ (- 1) no le da la inversa de la matriz-lugar, le da la inversa de los elementos. Para invertir una matriz, se utiliza el resolver() función, así:

gt; matriz cuadrada lt; - matriz (c (1,0,3,2,2,4,3,2,1), NcoI = 3) gt; resolver (square.matrix) [, 1] [, 2] [, 3] [1], 0,5 -0,8333333 0,1666667 [2,] -0,5 0,6666667 0,1666667 [3], 0,5 -0,1666667 -0,1666667

Tenga cuidado de invertir una matriz como ésta, debido al riesgo de errores de redondeo. R calcula la mayoría de las estadísticas basadas en las descomposiciones como la descomposición QR, la descomposición de un solo valor, y la descomposición de Cholesky. Puede hacerlo utilizando las funciones qr (), svd (), y chol (), respectivamente. Consulte las páginas correspondientes de la Ayuda para obtener más información.

Multiplicar dos matrices en R

El operador de multiplicación (*) Funciona elemento a elemento en matrices. Para calcular el producto interno de dos matrices, se utiliza el operador especial % *%, Me gusta esto:

Video: La Regla de Tres - Operaciones matemáticas

gt; first.matrix% *% t (second.matrix) [, 1] [, 2] [, 3] [1,] 22 44 66 [2], 26 52 78 [3], 30 60 90

Usted tiene que transponer la second.matrix primera de otro modo, ambas matrices tienen dimensiones no conformables. Multiplicar una matriz con un vector es un poco de un caso- especial siempre que las dimensiones encajan, R convertirá automáticamente el vector a cualquiera de una fila o una matriz de la columna, lo que es aplicable en este caso. Se puede comprobar por sí mismo en el siguiente ejemplo:

gt; first.matrix% *% 1: 4 [, 1] [1], 70 [2], 80 [3], 90gt; 1: 3% *% first.matrix [, 1] [, 2] [, 3] [, 4] [1,] 14 32 50 68
Artículos Relacionados