EJERCICIOS CON VECTORES EN R
Los vectores son elementos esenciales en el estudio de las matemáticas, especialmente en el álgebra lineal. Se pueden entender como una lista ordenada de números que representan tanto una magnitud como una dirección. Estos vectores pueden tener dos, tres o más componentes, dependiendo del número de dimensiones del espacio en el que se trabajen. Por ejemplo, un vector en dos dimensiones se puede visualizar como una flecha en el plano, mientras que en tres dimensiones puede representarse en el espacio. Los vectores se utilizan para describir desplazamientos, velocidades, fuerzas y muchas otras situaciones del mundo real. Además, permiten realizar operaciones como la suma, la resta, la multiplicación por un número y el cálculo de su longitud, lo que los hace muy útiles en campos como la física, la ingeniería, la informática y la economía.
EJERCICIO 1: Creación y exploración de vectores Crear un vector llamado ciudades que contenga los nombres de 15 ciudades.
ciudades <- c("Quito", "Guayaquil", "Cuenca", "Ambato", "Manta", "Machala",
"Riobamba", "Portoviejo", "Loja", "Santo Domingo",
"Ibarra", "Tena", "Esmeraldas", "Tulc?n", "Dur?n")
cat("ciudad:", ciudades)
## ciudad: Quito Guayaquil Cuenca Ambato Manta Machala Riobamba Portoviejo Loja Santo Domingo Ibarra Tena Esmeraldas Tulc?n Dur?n
n<- length(ciudades)
cat("total ciudades:",n )
## total ciudades: 15
cat("total ciudades:",length(ciudades))
## total ciudades: 15
indices <- which(sapply(ciudades, function(x) grepl("o", x)))
indices <- which(grepl("o", ciudades))
cat("el orden de las ciudades es:", sort(ciudades))
## el orden de las ciudades es: Ambato Cuenca Dur?n Esmeraldas Guayaquil Ibarra Loja Machala Manta Portoviejo Quito Riobamba Santo Domingo Tena Tulc?n
EJERCICIO 2: Notas de estudiantes Crear un vector llamado estudiantes con 10 nombres. Crear un vector llamado calificaciones con las notas de los estudiantes. Visualizar ambos vectores. Responder:
estudiantes<- c("Andrés", "Lucía", "Carlos", "Valeria",
"Javier", "Sofía", "Diego", "Elena",
"Martín", "Paola")
calificaciones <- c(9.5, 4.8, 8.3, 10, 3.4, 5.9, 8.7, 4.0, 7.2, 6.8)
cat("lista de estudiantes")
## lista de estudiantes
cat(estudiantes,"\n")
## Andrés Lucía Carlos Valeria Javier Sofía Diego Elena Martín Paola
show(estudiantes)
## [1] "Andrés" "Lucía" "Carlos" "Valeria" "Javier" "Sofía" "Diego"
## [8] "Elena" "Martín" "Paola"
cat("lista de calificaciones", "\n")
## lista de calificaciones
cat(calificaciones,"\n")
## 9.5 4.8 8.3 10 3.4 5.9 8.7 4 7.2 6.8
show(calificaciones)
## [1] 9.5 4.8 8.3 10.0 3.4 5.9 8.7 4.0 7.2 6.8
cat("suma de las calificaciones:", sum(calificaciones))
## suma de las calificaciones: 68.6
cat("el promedio de las calificaciones es:", sum(calificaciones)/length(calificaciones))
## el promedio de las calificaciones es: 6.86
cat("las posiciones der las notas < 5 son:", which(calificaciones<5))
## las posiciones der las notas < 5 son: 2 5 8
cat("las calificines de menor a mayor:", sort(calificaciones, decreasing = T ))
## las calificines de menor a mayor: 10 9.5 8.7 8.3 7.2 6.8 5.9 4.8 4 3.4
EJERCICIO 3: Manipulación de vectores
Crear un vector llamado vec1 con los números del 5 al 15.
# Paso 1: Crear el vector vec1 con los números del 5 al 15
vec1 <- 5:15
# Paso 2: Extraer los elementos en las posiciones 2, 4 y 6
elementos_extraidos <- vec1[c(2, 4, 6)]
# Paso 3: Reemplazar el último elemento por 100
vec1[length(vec1)] <- 100
# Paso 4: Contar cuántos elementos tiene el vector actualizado
cantidad_elementos <- length(vec1)
# Resultados
cat("El vector actualizado es:", vec1, "\n")
## El vector actualizado es: 5 6 7 8 9 10 11 12 13 14 100
cat("Los elementos extraídos son:", elementos_extraidos, "\n")
## Los elementos extraídos son: 6 8 10
cat("La cantidad de elementos en el vector actualizado es:", cantidad_elementos, "\n")
## La cantidad de elementos en el vector actualizado es: 11
EJERCICIO 4: Operaciones aritméticas y resumen de vectores
Crear dos vectores vec2 y vec3 con 6 valores enteros aleatorios entre 10 y 50.
vec2 <- sample(10:50, 6, replace = F)
vec3 <- sample(10:50, 6, replace = F)
# SUMA DE VEC3 Y VEC3
cat("La suma de los vectores es: ", vec2+vec3)
## La suma de los vectores es: 55 87 34 76 65 58
# MULTIPLICACION DE VEC3 Y VEC3
cat("La multiplicacion de los vectores es: ", vec2*vec3)
## La multiplicacion de los vectores es: 484 1850 273 1428 1026 480
# OPERACIONES DEL VECTOR 4
vec4 <- c(20, 35, 15, 40 ,25, 10)
sum_elem <- sum(vec4)
total_val <- length(vec4)
# SUMA DE LOS ELEMNTOS DEL VECTOR 4
cat("La suma de los elementos del vector 4 es: ", sum_elem)
## La suma de los elementos del vector 4 es: 145
# PROMEDIO DE LOS ELEMNTOS DEL VECTOR 4
cat("El promedio de los elementos del vector 4 es: ", sum_elem/total_val)
## El promedio de los elementos del vector 4 es: 24.16667
# DESVIACION ESTANDAR DE LOS ELEMNTOS DEL VECTOR 4
cat("l desviacion estandar del vector 4 es: ", sd(vec4))
## l desviacion estandar del vector 4 es: 11.58303
# ELEMENTO MINIMO DE LOS ELEMNTOS DEL VECTOR 4
cat("El elemento minimo del vector 4 es: ", min(vec4))
## El elemento minimo del vector 4 es: 10
# ELEMTO MAXIMO DE LOS ELEMNTOS DEL VECTOR 4
cat("El elemento maximo del vector 4 es: ", max(vec4))
## El elemento maximo del vector 4 es: 40
EJERCICIO 5: Subsetting y filtrado avanzado
# Paso 1: Crear el vector vec5
vec5 <- 1:25
# Paso 2: Filtrar los valores mayores que 12 y menores que 20
valores_filtrados <- vec5[vec5 > 12 & vec5 < 20]
# Paso 3: Crear un nuevo vector con los números divisibles entre 5
divisibles_entre_5 <- vec5[vec5 %% 5 == 0]
# Resultados
cat("Valores mayores que 12 y menores que 20:", valores_filtrados, "\n")
## Valores mayores que 12 y menores que 20: 13 14 15 16 17 18 19
cat("Valores divisibles entre 5:", divisibles_entre_5, "\n")
## Valores divisibles entre 5: 5 10 15 20 25
EJERCICIO 6: Operadores lógicos y operaciones con condiciones
Temperaturas<-c(25, 30, 18, 22, 27, 33, 15, 29)
vec5<-c(25, 30, 18, 22, 27, 33, 15, 29)
vecLogico<-c(Temperaturas > 20)
vec3<-sum(vecLogico)
vec4<-vec5[vec5<= 20]<-NA
#RESULTADOS
cat("TEMPERATURAS: ",Temperaturas)
## TEMPERATURAS: 25 30 18 22 27 33 15 29
cat("TEMPERATURAS MAYORES A 20: ",vecLogico)
## TEMPERATURAS MAYORES A 20: TRUE TRUE FALSE TRUE TRUE TRUE FALSE TRUE
cat("ELEMENTOS QUE CUMPLEN CON LA CONDICION DE SER MAYOR A 20:",vec3)
## ELEMENTOS QUE CUMPLEN CON LA CONDICION DE SER MAYOR A 20: 6
cat("VECTOR RESULTANTE AL REEMPLAZAR :" ,vec4, "EN",Temperaturas," = ",vec5)
## VECTOR RESULTANTE AL REEMPLAZAR : NA EN 25 30 18 22 27 33 15 29 = 25 30 NA 22 27 33 NA 29
EJERCICIO 7: Aplicación de funciones
valores<-c(2, 4, 6, 8, 10, 12, 14, 16)
#OPERACIONES
raiz<-sqrt(valores)
loga<-log(valores)
ex<-exp(valores)
#RESULTADOS
r1<-c(raiz)
cat("LAS RAÍCES CUADRADAS DE:",valores, "SON:",r1)
## LAS RAÍCES CUADRADAS DE: 2 4 6 8 10 12 14 16 SON: 1.414214 2 2.44949 2.828427 3.162278 3.464102 3.741657 4
r2<-c(loga)
cat("LOS LOGARITMOS DE:",valores,"SON:", r2)
## LOS LOGARITMOS DE: 2 4 6 8 10 12 14 16 SON: 0.6931472 1.386294 1.791759 2.079442 2.302585 2.484907 2.639057 2.772589
r3<-c(ex)
cat("LOS ExPONENTE DE:",valores,"SON:",r3)
## LOS ExPONENTE DE: 2 4 6 8 10 12 14 16 SON: 7.389056 54.59815 403.4288 2980.958 22026.47 162754.8 1202604 8886111
EJERCICIO 8: Ordenación y eliminación de elementos
vec6<-c(18, 25, 12, 9, 40, 5, 22)
ord<-sort(vec6)
ord2<-rev(ord)
p1<-which(vec6==12)
p2<-which(vec6==40)
vec7<-vec6[-c(p1, p2)]
#RESULTADOS
cat("CREACION DE VECTOR:",vec6)
## CREACION DE VECTOR: 18 25 12 9 40 5 22
cat("ORDENAR EL VECTOR ASCENDENTE:",ord)
## ORDENAR EL VECTOR ASCENDENTE: 5 9 12 18 22 25 40
cat("ORDENAR EL VECTOR DESCENDENTE:",ord2)
## ORDENAR EL VECTOR DESCENDENTE: 40 25 22 18 12 9 5
cat("ELIMINAR EL 3ER Y 5TO ELEMENTO DEL VECTOR ORIGINAL:",vec6," ","VECTOR RESULTANTE:",vec7)
## ELIMINAR EL 3ER Y 5TO ELEMENTO DEL VECTOR ORIGINAL: 18 25 12 9 40 5 22 VECTOR RESULTANTE: 18 25 9 5 22
EJERCICIO 9: Concatenación y creación de nuevos vectores
vec7<-c(1:6)
vec8<-c(7:12)
vec9<-c(vec7,vec8)
cont<-length(vec9)
#RESULTADOS
cat("CREACION DE VECTOR 7:",vec7)
## CREACION DE VECTOR 7: 1 2 3 4 5 6
cat("CREACION DE VECTOR 8:",vec8)
## CREACION DE VECTOR 8: 7 8 9 10 11 12
cat("LOS VECTORES CONCATENADOS SON:",vec9)
## LOS VECTORES CONCATENADOS SON: 1 2 3 4 5 6 7 8 9 10 11 12
cat("EL NÚMERO DE ELEMENTOS QUE CONTIENE EL NUEVO VECTOR SON:",cont)
## EL NÚMERO DE ELEMENTOS QUE CONTIENE EL NUEVO VECTOR SON: 12
EJERCICIO 10: Subsetting avanzado y operaciones
vec10<-c(10, 15, 20, 25, 30, 35, 40)
vec11 <- vec10[vec10 > 20 & vec10 <= 35]
totals <- sum(vec11)
#RESULTADOS
cat("CREACION DE VECTOR 10:",vec10)
## CREACION DE VECTOR 10: 10 15 20 25 30 35 40
cat("NÚMEROS > A 20 y <= A 35:",vec11)
## NÚMEROS > A 20 y <= A 35: 25 30 35
cat("SUMA DE LOS VALORES EXTRAÍDOS:",totals)
## SUMA DE LOS VALORES EXTRAÍDOS: 90
CONCLUSIÓN
El estudio de los vectores en el espacio real ha permitido no solo comprender su definición y propiedades, sino también aplicar sus operaciones en distintos contextos prácticos. A través del desarrollo de 10 ejercicios, se reforzaron conceptos clave como la suma y resta de vectores, el producto por un escalar, el cálculo de la magnitud y el análisis de la dirección. Estos ejercicios sirvieron como una herramienta efectiva para afianzar los conocimientos teóricos y para evidenciar la utilidad de los vectores en la resolución de problemas reales. En conjunto, esta práctica contribuyó al fortalecimiento del razonamiento lógico y a una mejor comprensión de las aplicaciones de los vectores en distintas disciplinas.