Solucion ejercicio 1

mi_matriz<-matrix(data = 1:12,nrow=3,byrow = TRUE)
mi_matriz
##      [,1] [,2] [,3] [,4]
## [1,]    1    2    3    4
## [2,]    5    6    7    8
## [3,]    9   10   11   12
mi_matriz2<-matrix(data = 1:12,nrow=3,byrow = FALSE) |>print()
##      [,1] [,2] [,3] [,4]
## [1,]    1    4    7   10
## [2,]    2    5    8   11
## [3,]    3    6    9   12

solucion ejercicio 2

ana <- c(10, 20, 30) 
beto <- c(15, 25, 35) 
unir_filas<-rbind(ana,beto) |> print()
##      [,1] [,2] [,3]
## ana    10   20   30
## beto   15   25   35
unir_columnas<-cbind(ana,beto) |> print()
##      ana beto
## [1,]  10   15
## [2,]  20   25
## [3,]  30   35
rownames(unir_filas)<-c("maria","jose")
unir_filas
##       [,1] [,2] [,3]
## maria   10   20   30
## jose    15   25   35
colnames(unir_filas)<-c("examen 1","examen 2","examen 3")
unir_filas
##       examen 1 examen 2 examen 3
## maria       10       20       30
## jose        15       25       35

solucion ejercicio 3

#creacion de la matrix:
set.seed(50)
(mi_matriz_aleatoria<-matrix(data=sample(x = 1:100,size = 9), nrow = 3,byrow = TRUE))|>print()
##      [,1] [,2] [,3]
## [1,]   11   52   95
## [2,]   98   46   67
## [3,]    8   16   18
#calculando la transpuesta:
#sin guardar:
mi_matriz_aleatoria |>t() #no se crea un objeto
##      [,1] [,2] [,3]
## [1,]   11   98    8
## [2,]   52   46   16
## [3,]   95   67   18
# con guardado
transpuesta_mi_matriz_aleatoria<-t(mi_matriz_aleatoria)|>print() #si se crea un objeto
##      [,1] [,2] [,3]
## [1,]   11   98    8
## [2,]   52   46   16
## [3,]   95   67   18
#extrayendo el elemento 2,3

transpuesta_mi_matriz_aleatoria[2,3] |>print()
## [1] 16
#multiplicando la matriz por un escalar
10*transpuesta_mi_matriz_aleatoria |>print()
##      [,1] [,2] [,3]
## [1,]   11   98    8
## [2,]   52   46   16
## [3,]   95   67   18
##      [,1] [,2] [,3]
## [1,]  110  980   80
## [2,]  520  460  160
## [3,]  950  670  180

solucion ejercicio 4

# creando una matriz identidad
matrix_identidad<-diag(x = 1,nrow = 3,ncol = 3) |>print()
##      [,1] [,2] [,3]
## [1,]    1    0    0
## [2,]    0    1    0
## [3,]    0    0    1
# creando una matriz diagonal con los elementos
matrix_diagonal<-diag(x = c(5, 10, 15),nrow = 3,ncol = 3) |> print()
##      [,1] [,2] [,3]
## [1,]    5    0    0
## [2,]    0   10    0
## [3,]    0    0   15

Solucion ejercicio 5

#ingreso matriz
M<-matrix(data=c(1,2,3,4),nrow = 2, byrow = TRUE)|> print()
##      [,1] [,2]
## [1,]    1    2
## [2,]    3    4
# 1.calculando la inversa
M_inversa<-solve(M)|> print()
##      [,1] [,2]
## [1,] -2.0  1.0
## [2,]  1.5 -0.5
# 2.verificacion
M%*% M_inversa|> round(digits = 0) |> print()
##      [,1] [,2]
## [1,]    1    0
## [2,]    0    1
M_inversa%*% M|> round(digits = 0) |> print()
##      [,1] [,2]
## [1,]    1    0
## [2,]    0    1
# 3.
matriz_no_invertible_1<-matrix(data = c(2,4,0,0),nrow = 2,byrow =TRUE)|> print()
##      [,1] [,2]
## [1,]    2    4
## [2,]    0    0
ifelse(det(matriz_no_invertible_1!=0), solve(matriz_no_invertible_1),"Matriz Singular")
## [1] "Matriz Singular"

solucion ejercicio 6

library(matlib)
fila1<-c(2,3,5,6) 
fila2<-c(0,8,1,-7) 
(fila3<-fila1+fila2)
## [1]  2 11  6 -1
matriz_para_rango<-matrix(data = c(fila1,fila2,fila3),nrow =3, byrow = TRUE ) |> print()
##      [,1] [,2] [,3] [,4]
## [1,]    2    3    5    6
## [2,]    0    8    1   -7
## [3,]    2   11    6   -1
rango<- matlib::R(X=matriz_para_rango) |> print()
## [1] 2

solucion ejercicio 7

#creando la matriz simetrica
S<-matrix(data = c(2,1,1,2),nrow = 2,byrow = TRUE)|> print()
##      [,1] [,2]
## [1,]    2    1
## [2,]    1    2
#calcular los autovalores(y tambien los autovectores)
resultado<-eigen(S)
#AUTOVALORES
resultado$values
## [1] 3 1
#verificar los autovalores
#verificando el primer autovalor
det(S-resultado$values[1]*diag(x = 1,2))==0
## [1] TRUE
#verificando el segundo autovalor
det(S-resultado$values[2]*diag(x = 1,2))==0
## [1] TRUE

#solucion de ejercicio 8

library(matlib)
A<-matrix(data = c(2,3,1,1,-2,4,3,1,-1),nrow = 3, byrow = TRUE)|> print()
##      [,1] [,2] [,3]
## [1,]    2    3    1
## [2,]    1   -2    4
## [3,]    3    1   -1
B<-matrix(data = c(1,-3,4), ncol = 1, byrow = TRUE)|> print()
##      [,1]
## [1,]    1
## [2,]   -3
## [3,]    4
#matriz aumentado S
S<-cbind(A,B)|> print()
##      [,1] [,2] [,3] [,4]
## [1,]    2    3    1    1
## [2,]    1   -2    4   -3
## [3,]    3    1   -1    4
#teorema de rouche frobenius
matlib::R(S)==matlib::R(A)
## [1] TRUE
#resolver el sistema
solucion<-solve(A,B)|> print()
##      [,1]
## [1,]    1
## [2,]    0
## [3,]   -1
#verificacion
A%*%solucion-B
##      [,1]
## [1,]    0
## [2,]    0
## [3,]    0

#solucion ejercicio 9

library(matlib)
matlib::gaussianElimination(A,B,verbose = TRUE, fractions = TRUE)
## 
## Initial matrix:
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1] [,2] [,3] [,4]
## [1,]  2    3    1    1  
## [2,]  1   -2    4   -3  
## [3,]  3    1   -1    4  
## 
## row: 1 
## 
##  exchange rows 1 and 3
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1] [,2] [,3] [,4]
## [1,]  3    1   -1    4  
## [2,]  1   -2    4   -3  
## [3,]  2    3    1    1  
## 
##  multiply row 1 by 1/3
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1] [,2] [,3] [,4]
## [1,]    1  1/3 -1/3  4/3
## [2,]    1   -2    4   -3
## [3,]    2    3    1    1
## 
##  subtract row 1 from row 2
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1]  [,2]  [,3]  [,4] 
## [1,]     1   1/3  -1/3   4/3
## [2,]     0  -7/3  13/3 -13/3
## [3,]     2     3     1     1
## 
##  multiply row 1 by 2 and subtract from row 3
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1]  [,2]  [,3]  [,4] 
## [1,]     1   1/3  -1/3   4/3
## [2,]     0  -7/3  13/3 -13/3
## [3,]     0   7/3   5/3  -5/3
## 
## row: 2 
## 
##  multiply row 2 by -3/7
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1]  [,2]  [,3]  [,4] 
## [1,]     1   1/3  -1/3   4/3
## [2,]     0     1 -13/7  13/7
## [3,]     0   7/3   5/3  -5/3
## 
##  multiply row 2 by 1/3 and subtract from row 1
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1]  [,2]  [,3]  [,4] 
## [1,]     1     0   2/7   5/7
## [2,]     0     1 -13/7  13/7
## [3,]     0   7/3   5/3  -5/3
## 
##  multiply row 2 by 7/3 and subtract from row 3
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1]  [,2]  [,3]  [,4] 
## [1,]     1     0   2/7   5/7
## [2,]     0     1 -13/7  13/7
## [3,]     0     0     6    -6
## 
## row: 3 
## 
##  multiply row 3 by 1/6
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1]  [,2]  [,3]  [,4] 
## [1,]     1     0   2/7   5/7
## [2,]     0     1 -13/7  13/7
## [3,]     0     0     1    -1
## 
##  multiply row 3 by 2/7 and subtract from row 1
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1]  [,2]  [,3]  [,4] 
## [1,]     1     0     0     1
## [2,]     0     1 -13/7  13/7
## [3,]     0     0     1    -1
## 
##  multiply row 3 by 13/7 and add to row 2
## Warning in printMatrix(A): Function is deprecated. See latexMatrix() and Eqn()
## for more recent approaches
##      [,1] [,2] [,3] [,4]
## [1,]  1    0    0    1  
## [2,]  0    1    0    0  
## [3,]  0    0    1   -1