UNIVERSIDAD CENTRAL DEL ECUADOR

FACULTAD DE CIENCIAS ECONÓMICAS

INGENIERÍA EN ESTADÍSTICA

PROGRAMACIÓN

TALLER Nº5

TEMA: Ejercicio con Vectores en R

GRUPO 7

Curso: EST S3 – 002

Docente: Ing. Francisco Valverde


EJERCICIOS CON VECTORES EN R


  1. INTRODUCCIÓN

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.



  1. DESARROLLO

EJERCICIO 1: Creación y exploración de vectores Crear un vector llamado ciudades que contenga los nombres de 15 ciudades.

  • Visualizar el vector en pantalla.
  • ¿Cuántos elementos contiene el vector?
  • Identificar en qué posiciones aparece la letra “o” en los nombres del vector ciudades.
  • Reordenar los elementos del vector en orden alfabético (ascendente y descendente).
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:

  • ¿Cuál es la suma total de las notas?
  • ¿Cuál es la nota promedio?
  • ¿En qué posiciones están las notas menores a 5?
  • Visualizar las notas ordenadas de menor a mayor.
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.

  • Extraer los elementos en las posiciones 2, 4 y 6 del vector.
  • Reemplazar el último elemento del vector por el valor 100.
  • ¿Cuántos elementos tiene el vector actualizado?
# 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.

  • Sumar y multiplicar los vectores vec2 y vec3.
  • Crear un vector llamado vec4 con los valores: 20, 35, 15, 40, 25, 10.
  • Calcular la suma, el promedio y la desviación estándar del vector vec4.
  • Identificar el valor máximo y mínimo de vec4 y sus posiciones.
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

  • Crear un vector vec5 con los números del 1 al 25.
  • Filtrar los valores de vec5 que sean mayores que 12 y menores que 20.
  • Crear un nuevo vector con los números de vec5 que sean divisibles entre 5.
# 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

  • Crear un vector llamado temperaturas con los valores: 25, 30, 18, 22, 27, 33, 15, 29.
  • Crear un nuevo vector lógico que indique si cada temperatura es mayor a 20.
  • Calcular cuántos elementos del vector temperaturas cumplen con la condición de ser mayores a 20.
  • Reemplazar las temperaturas menores a 20 con el valor “NA” y mostrar el vector resultante.
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

  • Crear un vector llamado valores con los números: 2, 4, 6, 8, 10, 12, 14, 16.
  • Aplicar las siguientes funciones a cada elemento del vector: sqrt() log() exp()
  • Mostrar los resultados en nuevos vectores.
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

  • Crear un vector vec6 con los valores: 18, 25, 12, 9, 40, 5, 22.
  • Ordenar el vector en orden ascendente y descendente.
  • Eliminar el tercer y quinto elemento del vector y mostrar el resultado final.
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

  • Crear dos vectores:
  • vec7 con los números del 1 al 6.
  • vec8 con los números del 7 al 12.
  • Concatenar ambos vectores en uno solo llamado vec9.
  • ¿Cuántos elementos tiene el nuevo vector vec9?
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

  • Crear un vector vec10 con los números: 10, 15, 20, 25, 30, 35, 40.
  • Extraer los números que sean mayores a 20 y menores o iguales a 35.
  • Calcular la suma de los valores extraídos.
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.