Ejercicio 1

Calcule los valores numéricos aproximados de la operaciones matemáticas

a <- (0.3*0.15)/(0.3*0.15+0.2*0.8+0.5*0.12)
a
## [1] 0.1698113
b <- (5^6)/(factorial(6))*exp(-5)
b
## [1] 0.1462228
c <- (factorial(20))/(factorial(7)*factorial(20-7))*0.4^7*0.6^13
c
## [1] 0.1658823

Ejercicio 2: El vector alumnos representa los nombres de una serie de alumnos.

Crear un vector alumnos con 20 nombres

  1. El vector alumnos representa los nombres de una serie de alumnos
alumnos<-c("LUIS","BRYAN","NATALY","MYRIAN","JUAN","THOMAS",
           "NICOLAS","LUCIANA","ANDREA","ENRIQUE","RAFAEL",
           "JUANA","ELENA","MARCO","SANDRA","ALEJANDRO","ESTEBAN",
           "MELANY","NICOLE","JOSELYN")
  1. Cantidad de componentes del vector alumnos
a<-length(alumnos)

cat("El vector tiene",a ,"componentes")
## El vector tiene 20 componentes
  1. Posiciones donde se encuentra la letra “A” en el vector alumnos
b<-which(grepl("A", alumnos))

cat("En esas posiciones se encuentra la letra A:",b)
## En esas posiciones se encuentra la letra A: 2 3 4 5 6 7 8 9 11 12 13 14 15 16 17 18

Ejercicio 3: El vector notas representa la nota de un examen, de los mismos alumnos cuyo lista se ha guardado en el vector alumnos y en el mismo orden.

  1. Crear un vector de notas de un examen
notas<-c(15,13,14,12,17,20,20,16,18,18,13,14,12,8,5,20,15,14,16,14)
notas
##  [1] 15 13 14 12 17 20 20 16 18 18 13 14 12  8  5 20 15 14 16 14
  1. Componentes de las notas
c<-length(notas)

cat("El vector tiene",c ,"componentes")
## El vector tiene 20 componentes
  1. Suma de todas las notas
d<-sum(notas)

cat("la suma de las notas es:",d)
## la suma de las notas es: 294
  1. Media aritmetica de todas las notas
e<-mean(notas)

cat("la media de las notas es:",e)
## la media de las notas es: 14.7
  1. Posicion de las notas mayores a 7
f<-notas[notas > 14]
cat("Estas son las notas mayores a 14:",f)
## Estas son las notas mayores a 14: 15 17 20 20 16 18 18 20 15 16
  1. Notas ordenadas de menor a mayor
h<-sort(notas)
cat("las notas ordenadas de menor a mayor:",h)
## las notas ordenadas de menor a mayor: 5 8 12 12 13 13 14 14 14 14 15 15 16 16 17 18 18 20 20 20
  1. Notas ordenadas de mayor a menor
g<-sort(notas, decreasing = TRUE)
cat("las notas ordenadas de mayor a menor:",g)
## las notas ordenadas de mayor a menor: 20 20 20 18 18 17 16 16 15 15 14 14 14 14 13 13 12 12 8 5
  1. Nota máxima
i<-max(notas)
cat("La nota maxima es:",i)
## La nota maxima es: 20
  1. Posición de la nota máxima
j<-which.max(notas)
cat("En esas posicione esta la nota maxima:",j)
## En esas posicione esta la nota maxima: 6

EJERCICIO 4: A partir de los vectores alumnos y notas definidos:

Realizar ejercicios a partir de los vectores alumnos y notas

  1. Visualiza las notas de los 10 primeros alumnos
notas10 <- notas[1:10]
print(notas10)
##  [1] 15 13 14 12 17 20 20 16 18 18
  1. Suma las notas de los 10 primeros alumnos del vector
sum10p <- sum(notas10)
print(sum10p)
## [1] 163
cat("La suma de las notas de los 10 primeros alumnos es",sum10p)
## La suma de las notas de los 10 primeros alumnos es 163
  1. ¿Cuántos alumnos hay en total?
tot <- length(notas)
print(tot)
## [1] 20
cat("Existen",tot, "alumnos")
## Existen 20 alumnos
  1. Suma las notas de los alumnos
sumaa<-sum(notas)
cat("La suma de las notas de los alumnos es",sumaa)
## La suma de las notas de los alumnos es 294
  1. Cuantos alumnos han aprobado?
apro<-length(which(notas>=13.5))
cat("Han reprobado",apro,"alumnnos")
## Han reprobado 14 alumnnos
  1. Que porcentaje de alumnos han aprobado
porapro <- (apro / a) * 100
print(porapro)
## [1] 70
cat("El porcentaje de alumnos aprovados es",porapro, "%")
## El porcentaje de alumnos aprovados es 70 %
  1. 4.7 Cuales han sido las notas maxima y minima
notmin<-min(notas)
notmax<-max(notas)
cat("La nota maxima es",notmax)
## La nota maxima es 20
cat("La nota minima es",notmin)
## La nota minima es 5
  1. De que alumnos son la maxima y minima notas
indice_max <- which.max(notas)
alumno_nota_maxima <- alumnos[indice_max]
nota_maxima <- notas[indice_max]

indice_min <- which.min(notas)
alumno_nota_minima <- alumnos[indice_min]
nota_minima <- notas[indice_min]

cat("El alumno con la nota máxima es", alumno_nota_maxima, 
    "con una nota de", nota_maxima, "\n")
## El alumno con la nota máxima es THOMAS con una nota de 20
cat("El alumno con la nota mínima es", alumno_nota_minima, 
    "con una nota de", nota_minima, "\n")
## El alumno con la nota mínima es SANDRA con una nota de 5
  1. Nota media de alumnos, teniendo en cuenta solo a los que han aprovado
notas_aprobados <- notas[notas >= 13.5]
medapro <- mean(notas_aprobados)
print(medapro)
## [1] 16.5
cat("La nota media de los alumnos aprovados es",medapro)
## La nota media de los alumnos aprovados es 16.5

Ejercicio 5: Creación y Manipulación de Vectores

  1. Crea un vector llamado vec1 que contenga los números del 1 al 10.
  2. Extrae el tercer y sexto elemento de vec1.
  3. Reemplaza el quinto elemento de vec1 por el número 99.
vec<-1:10
EXTRACCION<-vec[-c(3,6)]
EXTRACCION
## [1]  1  2  4  5  7  8  9 10
vec[5]<-99
vec
##  [1]  1  2  3  4 99  6  7  8  9 10

Ejercicio 6: Operaciones Aritméticas con Vectores

  1. Crea dos vectores vec2 y vec3 de longitud 5 con valores enteros aleatorios entre 1 y 20.
vec2<-sample(1:20, 5, replace=T)
vec2
## [1] 19 12  2  6 13
vec3<-sample(1:20, 5, replace=T)
vec3
## [1] 12 19  6  5 20
  1. Suma los vectores vec2 y vec3.
suma<-vec2+vec3
suma
## [1] 31 31  8 11 33
  1. Multiplica los vectores vec2 y vec3.
multiplicacion<-vec2*vec3
multiplicacion
## [1] 228 228  12  30 260

Ejercicio 7: Funciones de Resumen

  1. Crea un vector vec4 que contenga los valores 3, 5, 7, 2, 8, 10, 4, 6.
vec4<-c(3, 5, 7, 2, 8, 10, 4, 6)
vec4
## [1]  3  5  7  2  8 10  4  6
  1. Calcula la media, la mediana y la desviación estándar de vec4.
mean(vec4)#MEDIA
## [1] 5.625
median(vec4)#MEDIANA
## [1] 5.5
sd(vec4)#DESVIACION ESTANDAR
## [1] 2.66927

Ejercicio 8: Filtrado de Vectores

  1. Crea un vector vec5 que contenga los números del 1 al 20.
vec5<-1:20
vec5
##  [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20
  1. Filtra y crea un nuevo vector con los números de vec5 que sean mayores que 10.
vect6<-vec5[vec5>10]
vect6
##  [1] 11 12 13 14 15 16 17 18 19 20

Ejercicio 9: Ordenación de Vectores

  1. Crea un vector vec6 con los siguientes números: 12, 5, 13, 9, 2, 8, 10, 1.
vec6<-c(12, 5, 13, 9, 2, 8, 10,1)
  1. Ordena vec6 en orden ascendente.
vord<-sort(vec6)
vord
## [1]  1  2  5  8  9 10 12 13
  1. Ordena vec6 en orden descendente.
vdes<-sort(vec6,decreasing = T)
vdes
## [1] 13 12 10  9  8  5  2  1

Ejercicio 10: Operaciones Lógicas con Vectores

  1. Crea un vector vec7 que contenga los valores 7, 14, 3, 8, 15, 1, 6, 10.

  2. Crea un nuevo vector que contenga TRUE si el valor en vec7 es mayor que 5, y FALSE en caso contrario.

vec7<-c(7, 14, 3, 8, 15, 1, 6, 10)
vec7t<- vec7>5
vec7t
## [1]  TRUE  TRUE FALSE  TRUE  TRUE FALSE  TRUE  TRUE

Ejercicio 11: Subsetting Avanzado

  1. Crea un vector vec8 con los siguientes números: 11, 2, 19, 8, 5, 12, 3, 7.

  2. Extrae los elementos de vec8 que sean múltiplos de 3.

vec8<-c(11, 2, 19, 8, 5, 12, 3, 7)
vec8<-vec8[vec8 %% 3 == 0]
vec8
## [1] 12  3

Ejercicio 12: Funciones de Aplicación

  1. Crea un vector vec9 que contenga los valores 2, 4, 6, 8, 10, 12, 14, 16.

  2. Aplica la función sqrt (raíz cuadrada) a cada elemento de vec9.

vec9<-c(2, 4, 6, 8, 10, 12, 14, 16)
vec9<- sqrt(vec9)
vec9
## [1] 1.414214 2.000000 2.449490 2.828427 3.162278 3.464102 3.741657 4.000000

Ejercicio 13 : Concatenación de Vectores

  1. Crea dos vectores vec10 y vec11 de longitud 4 con valores enteros.

  2. Concatena vec10 y vec11 para formar un nuevo vector vec12.

vec10<-c(1,4,6,7)
vec11<-c(9,3,11,30)
vec12<-c(vec10,vec11)

Ejercicio 14: Eliminación de Elementos

  1. Crea un vector vec13 que contenga los números del 1 al 10.
  2. Elimina el cuarto y séptimo elemento de vec13.
 # Paso 1: Crear un vector vec13 con los números del 1 al 10
vec13 <- 1:10
print(vec13)  # Mostrar el vector para verificar
##  [1]  1  2  3  4  5  6  7  8  9 10
 #Paso 2: Eliminar el cuarto y séptimo elemento de vec13
vec13 <- vec13[-c(4, 7)]
print(vec13)  # Mostrar el vector resultante
## [1]  1  2  3  5  6  8  9 10