UNIVERSIDAD CENTRAL DEL ECUADOR

FACULTAD DE CIENCIAS ECONÓMICAS

INGENIERÍA EN ESTADÍSTICA

AUTORES:

*JOHANNA AGUILAR

*JOSE BAÑO

*SAYRI MENDOZA

*JAIME PAREDES

FECHA DE PUBLICACIÓN: 2023-06-18

TALLER N#6

Ejercicios de Matrices en R

EJERCICIO 1

En el presente trabajo se encuentra 7 diferentes ejercicios con matrices los cuales fueron elaborados en el programa Rstudio.

Considerando la siguiente matriz

El comando que permite introducir matrices en RStudio es matrix(). Para construir una matriz B escribimos: B <−matrix(c(); ncol =; nrow =) Donde 𝑐() corresponde al vector de las entradas de la matriz A separadas por comas y siguiendo el orden de las columnas, además 𝑛𝑐𝑜𝑙 corresponde al número de columnas y 𝑛𝑟𝑜𝑤 el número de filas.

Proceso

1.- Se crea una matriz de 4x3 para poder ser visualizada en la pantalla

A <- c(1,2,3,4,2,4,6,8,3,6,9,12)
dim(A) <- c(4,3)
A
##      [,1] [,2] [,3]
## [1,]    1    2    3
## [2,]    2    4    6
## [3,]    3    6    9
## [4,]    4    8   12

EJERCICIO 2

Introducir la matriz identidad de tamaño 4x4 en RStudio (sin usar un vector de 16 valores)

Proceso

1.-Se aplica la función diag a la matriz que permite construir una array diagonal y se especifica el número filas con la función nrow.

I=diag(1,4,4)

2.- se hace el llamado a la matriz identidad para que se puede reflejar los 16 valores.

I
##      [,1] [,2] [,3] [,4]
## [1,]    1    0    0    0
## [2,]    0    1    0    0
## [3,]    0    0    1    0
## [4,]    0    0    0    1

EJERCICIO 3

Encontrar la matriz inversa de L, donde L se define como:

usar el paquete matlib ……….

Proceso

1.- Se genera la matriz de 3x3

L <- matrix(c(1,-1,2,2,-1,7,-4,5,-3),3,3)
L
##      [,1] [,2] [,3]
## [1,]    1    2   -4
## [2,]   -1   -1    5
## [3,]    2    7   -3

2.- Se utiliza el paquete (matlib) para poder hacer una matriz inversa

install.packages("matlib")
library(matlib)

3.- Se asigna a L las columnas de la matriz y se determina la matriz inversa de L

j <- solve(L)
j
##       [,1]  [,2] [,3]
## [1,] -16.0 -11.0  3.0
## [2,]   3.5   2.5 -0.5
## [3,]  -2.5  -1.5  0.5

EJERCICIO 4

Suponga que se quiere ingresar una matriz con muchas entradas como la matriz P que se presenta a continuación.

hacerlo pero desde un archivo en excel (investigar como hacerlo)

Proceso

1.- Se debe instalar un paquete readxl para exportar documentos de excel install.packages(readxl)

library(readxl)
## Warning: package 'readxl' was built under R version 4.2.3

2.- Se debe buscar la ruta del archivo excel

file.choose()
## [1] "C:\\Users\\user\\OneDrive\\Documentos\\matrix.ejercicio4.xlsx"

3.- Copiamos la ruta de la consola y designamos una variable, se importan los datos desde el excel

matriz.j <- "C:\\Users\\user\\OneDrive\\Documentos\\matrix.ejercicio4.xlsx"
matriz_excel <- read_excel(matriz.j)
## New names:
## • `2` -> `2...2`
## • `2` -> `2...5`

4.- Para verificar y visualizar la matriz en la consola

p <- as.matrix(matriz_excel)
p
##      1 2...2  3 0 2...5
## [1,] 2     4  6 0     3
## [2,] 3     6  9 0     5
## [3,] 4     8 12 0     7
## [4,] 5    10 15 5    11
## [5,] 6    12 18 5    13
## [6,] 7    14 21 5    17
## [7,] 8    16 24 5    19
## [8,] 9    18 27 5    23

EJERCICIO 5

Resolver el siguiente sistema de ecuaciones usando R:

Puede usar el comando solve (investigue como hacerlo)

1.- Creamos la matriz

D <- matrix(c(1,-2,5,-7), ncol = 2, nrow = 2)
b <- c(7,-5)

2.- Con la función solve nos permitira obtener la inversa de una matriz cuando sólo #se la da un argumento, y permite resolver sistemas de ecuaciones #lineales.

library(matlib)
## Warning: package 'matlib' was built under R version 4.2.3
Solve(D,b, verbose = TRUE, fractions = TRUE)
## 
## Initial matrix:
##      [,1] [,2] [,3]
## [1,]  1    5    7  
## [2,] -2   -7   -5  
## 
## row: 1 
## 
##  exchange rows 1 and 2 
##      [,1] [,2] [,3]
## [1,] -2   -7   -5  
## [2,]  1    5    7  
## 
##  multiply row 1 by -1/2 
##      [,1] [,2] [,3]
## [1,]   1  7/2  5/2 
## [2,]   1    5    7 
## 
##  subtract row 1 from row 2 
##      [,1] [,2] [,3]
## [1,]   1  7/2  5/2 
## [2,]   0  3/2  9/2 
## 
## row: 2 
## 
##  multiply row 2 by 2/3 
##      [,1] [,2] [,3]
## [1,]   1  7/2  5/2 
## [2,]   0    1    3 
## 
##  multiply row 2 by 7/2 and subtract from row 1 
##      [,1] [,2] [,3]
## [1,]  1    0   -8  
## [2,]  0    1    3  
## x1    =  -8 
##   x2  =   3

EJERCICIO 6

Realice el determinate de la siguiente matriz, la solución manual se adjunta, usted debe realizarlo por R, puede usar la funcion det y comprobar los resultados.

Proceso

1.- Se crea la matriz A mediante la función matriz y se le asigna los valores, estableciendo que es una matriz 3x3, mediante nrow=3 y byrow=TRUE.

A <- matrix(c(1,7,6,4,2,8,9,5,3), ncol = 3, byrow = TRUE)

2.- Se hace el llamado a la matriz A para reflejar los 9 datos.

A
##      [,1] [,2] [,3]
## [1,]    1    7    6
## [2,]    4    2    8
## [3,]    9    5    3

3.- Se le asigna a una variable r que refleje el resultado de la determinante a través de la función det.

DET =(minor(A,1,1)-minor(A,1,2)+2*minor(A,1,3))

det(A)
## [1] 398

EJERCICIO 7

Realizar en R la transpuesta de la matriz propuesta a continuación:

Proceso

1.- Se le asigna a A las columnas de la matriz y se llama a A.

A7 <- matrix(c(1,4,7,2,5,8,3,6,9),3,3)
A7
##      [,1] [,2] [,3]
## [1,]    1    2    3
## [2,]    4    5    6
## [3,]    7    8    9

2.- Se determina la matriz transpuesta

e <- t(A7)
e
##      [,1] [,2] [,3]
## [1,]    1    4    7
## [2,]    2    5    8
## [3,]    3    6    9