Cómo utilizar las operaciones normales en una matriz en la r

Probablemente la característica más fuerte de R es su capacidad para hacer frente a operaciones con matrices complejas de una manera fácil y optimizado. Debido a que gran parte de las estadísticas se reduce a operaciones con matrices, es natural que la I ama a crujir los números.

Cuando se habla de las operaciones sobre matrices, se puede tratar cualquiera de los elementos de la matriz o la matriz completa como el valor de operar en. Esa diferencia es bastante clara cuando se compara, por ejemplo, la transposición de una matriz y la adición de un solo número (o escalar) A una matriz.

Al transponer, se trabaja con toda la matriz. Al agregar un escalar a una matriz, se agrega que escalar a cada elemento de la matriz.

Se agrega un escalar a una matriz simplemente usando el operador de suma, +, Me gusta esto:

> First.matrix + 4 [1] [2] [3] [4] [1], 5 8 11 14 [2], 6 9 12 15 [3], 7 10 13 16

Puede utilizar todos los demás operadores aritméticos exactamente de la misma manera de realizar una operación en todos los elementos de una matriz.

La diferencia entre las operaciones sobre matrices y elementos se vuelve menos claro si se habla de la adición de matrices juntos. De hecho, la adición de dos matrices es la adición de los elementos que responden. Por lo tanto, usted necesita para asegurarse de que ambas matrices tienen las mismas dimensiones.

Veamos otro ejemplo: Digamos que usted quiere añadir 1 a la primera fila, 2 para la segunda fila, y 3 para la tercera fila de la matriz first.matrix. Usted puede hacer esto mediante la construcción de una matriz second.matrix que tiene cuatro columnas y tres filas y que tiene 1, 2, y 3 como valores en la primera, segunda y tercera filas, respectivamente.

El siguiente comando hace utilizando el reciclaje del primer argumento de la función de la matriz:

> Second.matrix lt; - la matriz (1: 3, nRow = 3, ncol = 4)

Con el operador de suma, puede añadir ambas matrices juntos, como esto:

> First.matrix + second.matrix [1] [2] [3] [4] [1], 2 5 8 11 [2], 4 7 10 13 [3], 6 9 12 15

Esta es la solución a su profesor de matemáticas aprobaría si ella le pidió que hiciera la adición de la matriz de la primera y la segunda matriz. Y aún más, si las dimensiones de las dos matrices no son los mismos, R se quejan y se niegan a llevar a cabo la operación, como se muestra en el siguiente ejemplo:

> First.matrix + second.matrix [, 1: 3] Error en first.matrix + second.matrix [, 1: 3]: matrices no conformables

Pero, ¿qué pasaría si en lugar de añadir una matriz, que agregó un vector? Echa un vistazo a los resultados de la siguiente código:

> First.matrix + 1: 3 [, 1] [, 2] [, 3] [, 4] [1], 2 5 8 11 [2], 4 7 10 13 [3], 6 9 12 15

No sólo R no se quejan acerca de las dimensiones, pero recicla el vector en los valores de las matrices. De hecho, R trata a la matriz como un vector en este caso simplemente ignorando las dimensiones. Así que, en este caso, no se utiliza la suma de matrices pero simple (vectorizado) adición.

De forma predeterminada, R llena matrices columna se refiere. Cuando R lee una matriz, también lee la columna se refiere. Esto tiene importantes implicaciones para el trabajo con matrices. Si usted no permanece consciente de ello, R puede morder en la pierna desagradablemente.




» » » » Cómo utilizar las operaciones normales en una matriz en la r