EJERCICIOS MODULO 1

Autor/a

I.Q. JUAN CARLOS MARTÍNEZ MARTÍNEZ

Fecha de publicación

3 de marzo de 2024

Ejercicios

Resolver los siguientes ejercicios de práctica

Vectores

  1. Crear un vector numérico con valores del 1 al 10.
  2. Crear un vector de caracteres con nombres de colores.
  3. Sumar dos vectores numéricos elemento por elemento.
  4. Calcular el producto escalar de dos vectores numéricos.
  5. Calcular la media de un vector numérico.
  6. Calcular la mediana de un vector numérico.
  7. Encontrar el valor máximo y mínimo de un vector numérico.
  8. Crear un vector booleano que identifique los números pares en un vector numérico.
  9. Crear un vector de fechas para una semana completa.
  10. Crear un vector numérico con números aleatorios.
  11. Ordenar un vector numérico de forma ascendente.
  12. Ordenar un vector numérico de forma descendente.
  13. Concatenar dos vectores numéricos.
  14. Reemplazar los valores negativos de un vector numérico por ceros.
  15. Calcular la suma acumulada de un vector numérico.
  16. Multiplicar cada elemento de un vector numérico por un escalar.
  17. Calcular la distancia euclidiana entre dos vectores numéricos.
  18. Encontrar los índices de los elementos mayores que cierto valor en un vector numérico.
  19. Crear un vector lógico que identifique los valores duplicados en un vector 1. numérico.
  20. Calcular la longitud de un vector.

Matrices

  1. Crear una matriz 3x3 con valores del 1 al 9.
  2. Calcular la suma de dos matrices.
  3. Calcular la resta de dos matrices.
  4. Calcular el producto de dos matrices.
  5. Calcular el determinante de una matriz cuadrada.
  6. Calcular la matriz inversa de una matriz cuadrada.
  7. Transponer una matriz.
  8. Calcular la media de cada columna de una matriz.
  9. Calcular la suma de cada fila de una matriz.
  10. Calcular el producto punto entre dos filas de una matriz.
  11. Calcular la suma de cada columna de una matriz.
  12. Extraer la diagonal de una matriz.
  13. Cambiar el nombre de las filas y columnas de una matriz.
  14. Concatenar dos matrices por filas.
  15. Concatenar dos matrices por columnas.
  16. Reemplazar los valores negativos de una matriz por ceros.
  17. Calcular la matriz de covarianza de una matriz de datos.
  18. Multiplicar cada elemento de una matriz por un escalar.
  19. Encontrar el valor máximo y mínimo de una matriz.

Operaciones adicionales

  1. Resolver un sistema de ecuaciones lineales representado por una matriz.
  2. Calcular la proyección ortogonal de un vector sobre otro.
  3. Calcular el rango de una matriz.
  4. Calcular la traza de una matriz.
  5. Calcular la matriz identidad de tamaño n.
  6. Calcular la matriz diagonal a partir de un vector.
  7. Calcular la matriz de correlación a partir de una matriz de datos.
  8. Resolver un sistema de ecuaciones lineales sobredeterminado.
  9. Calcular la matriz de covarianza a partir de una matriz de datos.
  10. Resolver un problema de aplicación que involucre vectores y matrices.

Solución

Resolver los siguientes ejercicios de práctica

Vectores

Crear un vector numérico con valores del 1 al 10.

  • Opción 1:
c(1,2,3,4,5,6,7,8,9,10)

[1] 1 2 3 4 5 6 7 8 9 10

  • Opción 2:
1:10

[1] 1 2 3 4 5 6 7 8 9 10

  • Opción 3:
seq(1,10)

[1] 1 2 3 4 5 6 7 8 9 10


Crear un vector de caracteres con nombres de colores.

c("Azul","Negro","gris","verde","naranja","rosa","rojo")

[1] “Azul” “Negro” “gris” “verde” “naranja” “rosa” “rojo”


Sumar dos vectores numéricos elemento por elemento.

V1 = 1:10
V2 = 11:20

V3 = V1 + V2

El vector 1 contiene los valores \(V_1 =\) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

El vector 2 contiene los valores \(V_2 =\) 11, 12, 13, 14, 15, 16, 17, 18, 19, 20

Al sumar los valores de cada vector obtenemos \(V_3 =\) 12, 14, 16, 18, 20, 22, 24, 26, 28, 30


Calcular el producto escalar de dos vectores numéricos.

PE= V1 %*% V2

Al realizar el producto escalar de los vectores del punto anterior \(V_1\) y \(V_2\), el resultado es: \(V_1 \cdot V_2=\) 935


Calcular la media de un vector numérico.

med = mean(V1)

Para los valores del vector \(V_1 =\) la media de sus valores es: 5.5


Calcular la mediana de un vector numérico.

mediana=median(V2)

Para los valores del vector \(V_2 =\) la mediana de sus valores es: 15.5


Encontrar el valor máximo y mínimo de un vector numérico.

set.seed(123)
x<-sample(1:50, size = 10, replace = FALSE)

maximo = max(x)

minimo = min(x)

Para un vector con \(10\) valores aleatorios entre \(1\) y \(50\), el cual contiene los valores \(x = [\) 31, 15, 14, 3, 42, 43, 37, 48, 25, 26 \(]\) el número máximo es: 48 y el número mínimo del mismo vector es: 3


Crear un vector booleano que identifique los números pares en un vector numérico.

pares = x%%2==0

Usando los mismos valores del vector \(x =[\) 31, 15, 14, 3, 42, 43, 37, 48, 25, 26 \(]\) al resolver el ejercicio obtenemos el vector \(pares = [\) FALSE, FALSE, TRUE, FALSE, TRUE, FALSE, FALSE, TRUE, FALSE, TRUE \(]\)


Crear un vector de fechas para una semana completa.

inicio = dmy("19/02/2024")
fin = inicio + days(6)
semana = seq(inicio,fin,by="day")

Para resolver este ejercicio es necesario instalar y activar el paquete lubridate, se debe escribir la fecha de inicio y la guardamos en \(inicio =\) 2024-02-19 y a esta fecha sumarle \(6\) días para obtener el día final de la semana o la fecha que está una semana despues de la fecha inicial \(fin\) 2024-02-25, finalmente se genera el vector \(semana\) con los valores: [\(2024-02-19, 2024-02-20, 2024-02-21, 2024-02-22, 2024-02-23, 2024-02-24, 2024-02-25\)]


Crear un vector numérico con números aleatorios.

set.seed(123)
x<-sample(1:50, size = 10, replace = FALSE)

Podemos utilizar el mismo código para obtener el vector con números aleatorios \(x =\) \([\) \(31, 15, 14, 3, 42, 43, 37, 48, 25, 26\) \(]\)


Ordenar un vector numérico de forma ascendente.

sort(x)

[1] 3 14 15 25 26 31 37 42 43 48


Ordenar un vector numérico de forma descendente.

sort(x, decreasing = TRUE)

[1] 48 43 42 37 31 26 25 15 14 3


Concatenar dos vectores numéricos.

set.seed(35)
y = sample(-50:50, size = 10, replace = TRUE)
z = sample(0:100, size = 10, replace = TRUE)
s = c(y,z)

Con el código anterior se generan dos vectores con \(10\) valores aleatorios siendo: \[y=[ 23, 19, -43, 14, -44, -40, -37, 50, -33, 47 ]\] \[z=[ 31, 72, 88, 26, 84, 82, 13, 4, 5, 6 ]\] al concatenarlos con el código s=c(y,z) obtenemos el siguiente vector: \[s = [23, 19, -43, 14, -44, -40, -37, 50, -33, 47, 31, 72, 88, 26, 84, 82, 13, 4, 5, 6]\]


Reemplazar los valores negativos de un vector numérico por ceros.

cero = ifelse(y<0,0,y)

El código anterior genera un nuevo vector basandose en el vector \(y\), pero los valores negativos de \(y\) se remplazaron por \(0\) obteniendo el siguiente vector \[y=[23, 19, -43, 14, -44, -40, -37, 50, -33, 47]\] \[cero=[23, 19, 0, 14, 0, 0, 0, 50, 0, 47]\]


Calcular la suma acumulada de un vector numérico.

valores = c(5:20)
suma = cumsum(valores)

Del vector \(valores = [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]\) la suma de sus valores es: \(suma =[5, 11, 18, 26, 35, 45, 56, 68, 81, 95, 110, 126, 143, 161, 180, 200]\), el último valor de este vector representa la suma acumulada de todos los valores


Multiplicar cada elemento de un vector numérico por un escalar.

k = 3
valores_mult = k*valores

Utilizando el mismo vector del punto anterior \(valores =[ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]\) y la constante \(k =3\), al multiplicar el vector por el escalar se obtiene el siguiente vector \(v_k = [15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60]\)


Calcular la distancia euclidiana entre dos vectores numéricos.

La distancia euclidiana entre dos vectores numéricos la define la ecuación 1: \[d_E (P,Q) = \sqrt{\left( p_1-q_1 \right)^2 + \left(p_2 - q_2 \right)^2+...\left( p_n-q_n \right)^2} = \sqrt{\varSigma_{i=1}^{n}\left( p_i-q_i \right)^2}\]

set.seed(61)
a = sample(1:100, size = 10, replace = TRUE)
b = sample(1:100, size = 10, replace = TRUE)
d = sqrt ( sum ((a - b) ^ 2))

Para los vectores \(a\) y \(b\) la distancia euclidiana es: \(147.543214\) \[a=[12, 71, 23, 42, 20, 98, 75, 97, 4, 89]\] \[b=[96, 67, 80, 78, 40, 31, 64, 27, 15, 78]\]


Encontrar los índices de los elementos mayores que cierto valor en un vector numérico.

numero = 50
set.seed(61)
c = sample(1:100, size = 5, replace = TRUE)

indice = which(c > numero)
c

[1] 12 71 23 42 20

indice

[1] 2


Crear un vector lógico que identifique los valores duplicados en un vector numérico.

set.seed(65)
c = sample(1:5, size = 5, replace = TRUE)
vector_logico <- duplicated(c) | duplicated(c, fromLast = TRUE)
c
vector_logico
## [1] 3 2 4 1 1
## [1] FALSE FALSE FALSE  TRUE  TRUE

Calcular la longitud de un vector.

a
length(a)
##  [1] 12 71 23 42 20 98 75 97  4 89
## [1] 10

Matrices

En este documento no se podrá observar la forma de la matriz, sin embargo, se observarán los datos de estas, la forma de la matriz creada u obtenida solo se vería si las operaciones se realizan en la consola de RStudio

Crear una matriz 3x3 con valores del 1 al 9.

matrix(1:9, nrow = 3)
 [,1] [,2] [,3]

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

Genera la matriz siguiente

\[\begin{equation} \begin{vmatrix} &1 & 4 & 7&\\ &2 & 5 & 8&\\ &3 & 6 & 9& \end{vmatrix} \end{equation}\]


Calcular la suma de dos matrices.

m1 = matrix(5:20, nrow=4)
m2 = matrix(25:40, nrow = 4)

m3 = m1+m2
kable(m3)
30 38 46 54
32 40 48 56
34 42 50 58
36 44 52 60

\[\begin{equation} m_1 = \begin{vmatrix} &5 & 9 & 13 & 17& \\ &6 & 10 & 14 & 18& \\ &7 & 11 & 15 & 19& \\ &8 & 12 & 16 & 20& \end{vmatrix} \end{equation}\]

\[\begin{equation} m_2 = \begin{vmatrix} &25 & 29 & 33 & 37& \\ &26 & 30 & 34 & 38& \\ &27 & 31 & 35 & 39& \\ &28 & 32 & 36 & 40& \end{vmatrix} \end{equation}\]

\[\begin{equation} m_3 = m_1 + m_2 = \begin{vmatrix} & 30 & 38 & 46 & 54 & \\ & 32 & 40 & 48 & 56 & \\ & 34 & 42 & 50 & 58 & \\ & 36 & 44 & 52 & 60 & \end{vmatrix} \end{equation}\]


Calcular la resta de dos matrices.

m1 = matrix(5:20, nrow=4)
m2 = matrix(25:40, nrow = 4)

m3 = m1-m2
kable(m3)
-20 -20 -20 -20
-20 -20 -20 -20
-20 -20 -20 -20
-20 -20 -20 -20

\[\begin{equation} m_1 = \begin{vmatrix} &5 & 9 & 13 & 17& \\ &6 & 10 & 14 & 18& \\ &7 & 11 & 15 & 19& \\ &8 & 12 & 16 & 20& \end{vmatrix} \end{equation}\]

\[\begin{equation} m_2 = \begin{vmatrix} &25 & 29 & 33 & 37& \\ &26 & 30 & 34 & 38& \\ &27 & 31 & 35 & 39& \\ &28 & 32 & 36 & 40& \end{vmatrix} \end{equation}\]

\[\begin{equation} m_3 = m_1 - m_2 = \begin{vmatrix} & -20 & -20 & -20 &-20& \\ & -20 & -20 & -20 &-20& \\ & -20 & -20 & -20 &-20& \\ & -20 & -20 & -20 &-20& \end{vmatrix} \end{equation}\]


Calcular el producto de dos matrices.

m1 = matrix(5:20, nrow=4)
m2 = matrix(25:40, nrow = 4)

m3 = m1*m2
kable(m3)
125 261 429 629
156 300 476 684
189 341 525 741
224 384 576 800

\[\begin{equation} m_1 = \begin{vmatrix} &5 & 9 & 13 & 17& \\ &6 & 10 & 14 & 18& \\ &7 & 11 & 15 & 19& \\ &8 & 12 & 16 & 20& \end{vmatrix} \end{equation}\]

\[\begin{equation} m_2 = \begin{vmatrix} &25 & 29 & 33 & 37& \\ &26 & 30 & 34 & 38& \\ &27 & 31 & 35 & 39& \\ &28 & 32 & 36 & 40& \end{vmatrix} \end{equation}\]

\[\begin{equation} m_3 = m_1 * m_2 \begin{vmatrix} & 125 & 261 & 429 & 629 & \\ & 156 & 300 & 476 & 684 & \\ & 189 & 341 & 525 & 741 & \\ & 224 & 384 & 576 & 800 & \end{vmatrix} \end{equation}\]


Calcular el determinante de una matriz cuadrada.

a<-c(4,5,4)
b<-c(3,4,4)
d<-c(8,7,7)
B<-rbind(a,b,d)
det(B)

[1] 11

\[\begin{equation} det(B) = det \begin{vmatrix} & 4 & 5 & 4 \\ & 3 & 4 & 4 \\ & 8 & 7 & 7 \end{vmatrix} = 11 \end{equation}\]


Calcular la matriz inversa de una matriz cuadrada.

a<-c(4,5,4)
b<-c(3,4,4)
d<-c(8,7,7)
B<-rbind(a,b,d)
kable(solve(B))
a b d
0 -0.6363636 0.3636364
1 -0.3636364 -0.3636364
-1 1.0909091 0.0909091

Transponer una matriz

set.seed(876)
C1=sample(1:1000,100,replace = F)
C2=sample(1:1000,100,replace = F)
C3=sample(1:1000,100,replace = F)
C4=sample(1:1000,100,replace = F)
C5=sample(1:1000,100,replace = F)
m=cbind(C1,C2,C3,C4,C5)
kable(t(m))
C1 351 183 111 564 197 903 337 751 919 135 331 818 375 897 975 122 715 58 347 498 51 157 116 825 254 217 522 896 429 793 110 953 854 816 246 698 696 526 288 813 357 486 456 963 137 853 80 41 545 491 358 882 114 539 195 752 905 96 536 722 653 394 938 30 97 723 772 942 305 306 329 560 132 453 742 499 83 299 66 196 535 300 336 977 645 540 939 276 753 986 472 555 817 781 941 581 876 651 633 756
C2 363 172 985 650 871 766 899 646 971 57 963 44 600 224 244 167 903 826 256 980 338 33 119 744 579 373 365 507 448 487 740 801 4 425 150 817 179 546 697 796 555 784 388 314 500 443 510 635 235 797 165 923 678 17 520 490 36 686 553 121 117 750 671 18 103 330 52 147 459 773 177 517 898 733 528 913 660 936 788 727 946 795 200 352 581 824 927 943 361 205 109 323 858 730 699 118 751 69 298 532
C3 78 210 239 250 889 401 205 253 338 132 617 686 313 873 930 671 254 155 719 801 73 291 807 696 708 74 524 721 307 831 93 426 158 989 86 457 887 991 88 958 834 385 184 986 147 663 450 854 200 583 84 565 453 717 264 582 637 5 571 6 455 193 232 614 82 212 287 553 118 629 367 404 988 848 127 640 478 446 709 855 675 844 847 368 427 449 759 98 485 424 501 826 271 876 739 953 871 670 786 486
C4 746 451 657 262 487 389 166 638 276 443 864 718 93 75 162 960 282 480 823 449 394 367 996 622 124 631 640 788 173 237 118 985 847 949 613 454 659 138 324 251 925 959 450 988 193 101 737 80 836 500 225 220 912 926 747 755 890 456 527 629 983 704 647 117 291 106 546 646 945 368 950 127 248 491 360 637 39 827 142 752 272 30 23 211 278 22 549 742 174 59 398 616 448 600 992 460 672 860 371 214
C5 839 844 605 169 93 705 550 377 414 108 316 321 994 730 811 831 350 240 153 360 498 727 914 462 470 990 682 759 150 26 156 668 835 788 540 47 182 248 598 137 235 183 663 992 381 404 773 537 30 837 508 955 283 257 802 331 220 547 779 367 594 281 41 745 275 982 521 12 895 628 241 988 948 448 751 873 458 804 456 864 187 317 991 905 9 929 925 382 407 556 635 5 309 862 147 577 234 420 416 92

Calcular la media de cada columna de una matriz

set.seed(876)
C1=sample(1:1000,100,replace = F)
C2=sample(1:1000,100,replace = F)
C3=sample(1:1000,100,replace = F)
C4=sample(1:1000,100,replace = F)
C5=sample(1:1000,100,replace = F)
m=cbind(C1,C2,C3,C4,C5)
media = colMeans(m)
m=rbind(m,media)
kable(headTail(m))
C1 C2 C3 C4 C5
X 351 363 78 746 839
X.1 183 172 210 451 844
X.2 111 985 239 657 605
X.3 564 650 250 262 169
X.97 651 69 670 860 420
X.98 633 298 786 371 416
X.99 756 532 486 214 92
media 512.24 510.03 499.41 497.04 508.81

Calcular la suma de cada fila de una matriz

set.seed(876)
C1=sample(1:1000,100,replace = F)
C2=sample(1:1000,100,replace = F)
C3=sample(1:1000,100,replace = F)
C4=sample(1:1000,100,replace = F)
C5=sample(1:1000,100,replace = F)
m=cbind(C1,C2,C3,C4,C5)
suma = rowSums(m)
m=cbind(m,suma)
kable(headTail(m))
C1 C2 C3 C4 C5 suma
1 351 363 78 746 839 2377
2 183 172 210 451 844 1860
3 111 985 239 657 605 2597
4 564 650 250 262 169 1895
97 876 751 871 672 234 3404
98 651 69 670 860 420 2670
99 633 298 786 371 416 2504
100 756 532 486 214 92 2080

Calcular el producto punto entre dos filas de una matriz

Para este ejemplo las filas de la matriz deberán usarse como vectores, para realizar el producto punto.

El producto punto es la suma de los productos de cada elemento de cada vector, en el caso de dos vectores. \[v_1 \cdot v_2 = (a_{v_1}*a_{v_2})+(b_{v_1}*b_{v_2})+(c_{v_1}*c_{v_2})+...\]

set.seed(876)
C1=sample(1:1000,100,replace = F)
C2=sample(1:1000,100,replace = F)
C3=sample(1:1000,100,replace = F)
C4=sample(1:1000,100,replace = F)
C5=sample(1:1000,100,replace = F)
m=cbind(C1,C2,C3,C4,C5)
kable(headTail(m))
C1 C2 C3 C4 C5
1 351 363 78 746 839
2 183 172 210 451 844
3 111 985 239 657 605
4 564 650 250 262 169
97 876 751 871 672 234
98 651 69 670 860 420
99 633 298 786 371 416
100 756 532 486 214 92

De esta matriz usaremos la fila \(1\) y \(2\), para obtener el producto punto.

Donde cada fila tendrá los siguientes valores: \[f1= 351, 363, 78, 746, 839\] \[f_2= 183, 172, 210, 451, 844\] el producto punto lo obtenemos con el siguiente código

r=f1%*%f2

Obteniendo el valor \(1.187611\times 10^{6}\)


Calcular la suma de cada columna de una matriz.

set.seed(876)
C1=sample(1:1000,100,replace = F)
C2=sample(1:1000,100,replace = F)
C3=sample(1:1000,100,replace = F)
C4=sample(1:1000,100,replace = F)
C5=sample(1:1000,100,replace = F)
m=cbind(C1,C2,C3,C4,C5)
suma = colSums(m)
m=rbind(m,suma)
kable(headTail(m))
C1 C2 C3 C4 C5
X 351 363 78 746 839
X.1 183 172 210 451 844
X.2 111 985 239 657 605
X.3 564 650 250 262 169
X.97 651 69 670 860 420
X.98 633 298 786 371 416
X.99 756 532 486 214 92
suma 51224 51003 49941 49704 50881

Extraer la diagonal de una matriz.

a<-c(4,5,4)
b<-c(3,4,4)
d<-c(8,7,7)
B<-rbind(a,b,d)
kable(B)
a 4 5 4
b 3 4 4
d 8 7 7

De la matriz mostrada los valores de la diagonal son: 4, 4, 7 con el siguiente código:

diag(B)

Cambiar el nombre de las filas y columnas de una matriz.

a<-c(4,5,4)
b<-c(3,4,4)
d<-c(8,7,7)
B<-rbind(a,b,d)
kable(B)
a 4 5 4
b 3 4 4
d 8 7 7

Las columnas de esta matriz no están nombradas y las filas se llamán a, b, d, con el siguiente código se pueden modificar ambas caracteristicas de la matriz.

colnames(B)=c("C1","C2","C3")
rownames(B)=c("F1","F2","F3")
kable(B)
C1 C2 C3
F1 4 5 4
F2 3 4 4
F3 8 7 7

Concatenar dos matrices por filas.

A <- matrix(c(1,2,3,4), nrow = 2, ncol = 2)
B <- matrix(c(10,11,12,13), nrow = 2, ncol = 2)
kable(A)
1 3
2 4
kable(B)
10 12
11 13

kable(rbind(A,B))
1 3
2 4
10 12
11 13

Concatenar dos matrices por columnas.

A <- matrix(c(1,2,3,4), nrow = 2, ncol = 2)
B <- matrix(c(10,11,12,13), nrow = 2, ncol = 2)
kable(A)
1 3
2 4
kable(B)
10 12
11 13

kable(cbind(A,B))
1 3 10 12
2 4 11 13

Reemplazar los valores negativos de una matriz por ceros.

set.seed(879)
A=matrix(sample(-1000:1000,16,replace = F),nrow = 4)
kable(A)
41 92 -763 240
-915 -470 -710 -109
414 431 -785 15
-398 -516 -412 -591
cero = ifelse(A<0,0,A)
kable(cero)
41 92 0 240
0 0 0 0
414 431 0 15
0 0 0 0

Calcular la matriz de covarianza de una matriz de datos.

set.seed(174)
C1=sample(1:1000,10,replace = F)
C2=sample(1:1000,10,replace = F)
C3=sample(1:1000,10,replace = F)
C4=sample(1:1000,10,replace = F)
C5=sample(1:1000,10,replace = F)
m=cbind(C1,C2,C3,C4,C5)
cov_m=cov(m)
kable(m)
C1 C2 C3 C4 C5
701 178 34 705 150
278 238 915 296 865
449 801 172 70 553
115 924 885 197 976
752 654 682 399 941
960 41 103 659 485
168 240 409 311 564
228 252 909 678 367
417 293 602 569 847
61 498 913 268 237
kable(cov_m)
C1 C2 C3 C4 C5
C1 91507.66 -29153.46 -74500.84 34373.13 -5081.50
C2 -29153.46 85715.88 30149.71 -49170.09 37940.61
C3 -74500.84 30149.71 128168.93 -20352.42 41306.44
C4 34373.13 -49170.09 -20352.42 49990.18 -25270.78
C5 -5081.50 37940.61 41306.44 -25270.78 88239.61

Multiplicar cada elemento de una matriz por un escalar.

set.seed(14)
C1=sample(1:1000,10,replace = F)
C2=sample(1:1000,10,replace = F)
C3=sample(1:1000,10,replace = F)
C4=sample(1:1000,10,replace = F)
C5=sample(1:1000,10,replace = F)
m=cbind(C1,C2,C3,C4,C5)
kable(m)
C1 C2 C3 C4 C5
265 26 471 1 986
841 495 877 892 8
267 353 545 590 548
372 489 182 6 608
939 899 628 460 983
752 348 645 48 860
718 613 506 154 709
430 99 25 447 22
80 513 948 581 191
436 106 808 646 593
k = 4
m = m*k
kable(m)
C1 C2 C3 C4 C5
1060 104 1884 4 3944
3364 1980 3508 3568 32
1068 1412 2180 2360 2192
1488 1956 728 24 2432
3756 3596 2512 1840 3932
3008 1392 2580 192 3440
2872 2452 2024 616 2836
1720 396 100 1788 88
320 2052 3792 2324 764
1744 424 3232 2584 2372

Encontrar el valor máximo y mínimo de una matriz.

set.seed(4)
C1=sample(1:1000,10,replace = F)
C2=sample(1:1000,10,replace = F)
C3=sample(1:1000,10,replace = F)
C4=sample(1:1000,10,replace = F)
C5=sample(1:1000,10,replace = F)
m=cbind(C1,C2,C3,C4,C5)
kable(m)
min(m)
max(m)
C1 C2 C3 C4 C5
504 312 803 300 511
587 414 411 197 203
819 62 365 911 592
771 614 560 893 910
71 130 176 150 405
684 152 869 453 692
371 385 893 832 65
757 596 898 880 304
698 767 928 433 152
307 747 303 54 892
## [1] 54
## [1] 928

De esta matriz el valor máximo es \(928\) y el valor mínimo es \(54\)


Operaciones adicionales

  1. Resolver un sistema de ecuaciones lineales representado por una matriz.
  2. Calcular la proyección ortogonal de un vector sobre otro.
  3. Calcular el rango de una matriz.
  4. Calcular la traza de una matriz.
  5. Calcular la matriz identidad de tamaño n.
  6. Calcular la matriz diagonal a partir de un vector.
  7. Calcular la matriz de correlación a partir de una matriz de datos.
  8. Resolver un sistema de ecuaciones lineales sobredeterminado.
  9. Calcular la matriz de covarianza a partir de una matriz de datos.
  10. Resolver un problema de aplicación que involucre vectores y matrices.

Notas

  1. https://es.wikipedia.org/wiki/Distancia_euclidiana↩︎