Ejercicio 1

mi_matriz <- matrix(data = c(1,2,3,4,
                             5,6,7,8,
                             9,10,11,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 = c(1,2,3,4,
                              5,6,7,8,
                              9,10,11,12), ncol = 3, byrow = FALSE) |> 
  print()
##      [,1] [,2] [,3]
## [1,]    1    5    9
## [2,]    2    6   10
## [3,]    3    7   11
## [4,]    4    8   12

#Ejercicio 2

ana <- c(10, 20, 30) |> print()
## [1] 10 20 30
beto <- c(15, 25, 35) |> print()
## [1] 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 |>  print()
##       [,1] [,2] [,3]
## maria   10   20   30
## jose    15   25   35
colnames(unir_columnas) <- c("examen 1", "examen 2")
unir_columnas |> print()
##      examen 1 examen 2
## [1,]       10       15
## [2,]       20       25
## [3,]       30       35

Ejercicio 3

# Creacion mmatriz
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
# Creacion traspuesta
#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 guardar
transpuesta_mi_matriz <- t(mi_matriz_aleatoria) |>  print() #se crea y muestra el objeto
##      [,1] [,2] [,3]
## [1,]   11   98    8
## [2,]   52   46   16
## [3,]   95   67   18
transpuesta_mi_matriz[3,] |> as.matrix() |> t()
##      [,1] [,2] [,3]
## [1,]   95   67   18
10 * transpuesta_mi_matriz
##      [,1] [,2] [,3]
## [1,]  110  980   80
## [2,]  520  460  160
## [3,]  950  670  180

Ejercicio 4

#creando una matriz diagonal con los elementos de una diagonal principal
matriz_diagonal <- diag(x = 1, nrow = 3, ncol = 3) |> print()
##      [,1] [,2] [,3]
## [1,]    1    0    0
## [2,]    0    1    0
## [3,]    0    0    1
#matriz diagonal con numeros distintos a 1
matriz_diagonal2 <- 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

#Ejercicio 5

Ejercicio 6

fila1 <- c(2, 3, 5, 6) |> print()
## [1] 2 3 5 6
fila2 <- c(0, 6, 1, -7) |> print()
## [1]  0  6  1 -7
fila3 <- fila1 + fila2 |> print()
## [1]  0  6  1 -7
matriz_rango <- matrix(data = c(fila1, fila2, 
                                fila3), 
                       nrow = 3, byrow = TRUE) |> print()
##      [,1] [,2] [,3] [,4]
## [1,]    2    3    5    6
## [2,]    0    6    1   -7
## [3,]    2    9    6   -1
#rango de la matriz
rango <- matlib::R(X = matriz_rango) |> print()
## [1] 2

#Ejercicio 7

#1- 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
#2- los autovalores (y también 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))
## [1] 0
#verificando el segundo autovalor
det(S - resultado$values[2] * diag(x = 1, 2))
## [1] 0

ejericio 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
#1- matriz aumentada S (combinar)
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
solución <- solve(A,B) |> print()
##      [,1]
## [1,]    1
## [2,]    0
## [3,]   -1
#Verificaión
A%*%solución-B |> print()
##      [,1]
## [1,]    1
## [2,]   -3
## [3,]    4
##      [,1]
## [1,]    0
## [2,]    0
## [3,]    0

Ejercicio 9

matlib::gaussianElimination(A,B,verbose = TRUE,fractions = TRUE) |> print()
## 
## 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  
##      [,1] [,2] [,3] [,4]
## [1,]    1    0    0    1
## [2,]    0    1    0    0
## [3,]    0    0    1   -1
## attr(,"fracs")
##  [1] "1"  "0"  "0"  "0"  "1"  "0"  "0"  "0"  "1"  "1"  "0"  "-1"