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
# 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
#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
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
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
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"