Universidad Central del Ecuador

EJERCICIO 1: Calcular los valores numericos aproximados de:

  1. x= (0.30.15) / ((0.30.15) + (0.20.8) + (0.50.12))

\[ x = \frac{(0.3*0.15)} {0.3*0.15 + 0.2*0.8 + 0.5*0.12} \]


x <- (0.3*0.15)/((0.3*0.15)+(0.2*0.8)+(0.5*0.12))
x
## [1] 0.1698113


  1. y = (((5^6)/factorial(6))*exp(-5))

\[ y = \frac {5^6}{6!}\ e^{-5} \] ___

y <- (((5^6)/factorial(6))*exp(-5))
y
## [1] 0.1462228


  1. z = C(20,7)0.4^70.6^13

\[ z = \binom{20}{7} \times (0.4)^7 \times (0.6)^{13} \]


n <- 20
p <- 0.4
k <- 7  
combinatoria <- choose(n,k)
exito <- p^k
fracaso <- (1-p)^(n-k)
probabilidad <- combinatoria*exito*fracaso
probabilidad
## [1] 0.1658823

EJERCICIO 2: El vector alumnos representa los nombres de una serie de alumnos

  1. Visualízalo en pantalla
alumnos <- c("Ana","Arturo","Daniela","Jose","David","Joseph","Christopher","Melissa",
             "Tomas","Felix","Alan","Antony","Bryan","Antonella","Patricia","Joel",
             "Jefferson","Johanna","Angela","Juan")
alumnos
##  [1] "Ana"         "Arturo"      "Daniela"     "Jose"        "David"      
##  [6] "Joseph"      "Christopher" "Melissa"     "Tomas"       "Felix"      
## [11] "Alan"        "Antony"      "Bryan"       "Antonella"   "Patricia"   
## [16] "Joel"        "Jefferson"   "Johanna"     "Angela"      "Juan"

  1. ¿Cuántas componentes tiene el vector alumnos?
length(alumnos)
## [1] 20

  1. ¿En qué posiciones del vector alumnos está la letra ‘A’?
alumnos <- c("Ana","Arturo","Daniela","Jose","David","Joseph","Christopher","Melissa","Tomas","Felix","Alan","Antony","Bryan","Antonella","Patricia","Joel",
             "Jefferson","Johanna","Angela","Juan")

posiciones <- grep("A", alumnos) 
posiciones
## [1]  1  2 11 12 14 19

EJERCICIO 3

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

  1. Crear el vector notas
notas <- c(9.5, 7.8, 8.2, 6.7, 10.0, 5.4, 7.1, 8.9, 9.0, 6.3,7.5, 8.0, 6.8, 9.7, 7.2, 8.5, 6.9, 9.3, 7.6, 8.4)
  1. Visualízalo en pantalla
notas
##  [1]  9.5  7.8  8.2  6.7 10.0  5.4  7.1  8.9  9.0  6.3  7.5  8.0  6.8  9.7  7.2
## [16]  8.5  6.9  9.3  7.6  8.4
  1. ¿Cuántas componentes tiene?
componentes<-length(notas)
cat("El vector notas tiene ", componentes, " componentes.")
## El vector notas tiene  20  componentes.
  1. ¿Cuánto suman todas las notas?
suma<-sum(notas)
cat("La suma de todas las notas es ",suma)
## La suma de todas las notas es  158.8
  1. ¿Cuál es la media aritmética de todas las notas?
media<- mean(notas)
cat("La media de las notas es ",media)
## La media de las notas es  7.94
  1. ¿En qué posiciones están las notas mayores de 7?
posiciones<-which(notas>16)
cat("Las notas mayores a 7 estan en las siguientes posiciones ",posiciones)
## Las notas mayores a 7 estan en las siguientes posiciones
  1. Visualiza las notas ordenadas de menor a mayor
Orden_Ascendente<-sort(notas)
Orden_Ascendente
##  [1]  5.4  6.3  6.7  6.8  6.9  7.1  7.2  7.5  7.6  7.8  8.0  8.2  8.4  8.5  8.9
## [16]  9.0  9.3  9.5  9.7 10.0
  1. Visualiza las notas ordenadas de mayor a menor
Orden_Descendente<-sort(notas, decreasing = TRUE)
Orden_Descendente
##  [1] 10.0  9.7  9.5  9.3  9.0  8.9  8.5  8.4  8.2  8.0  7.8  7.6  7.5  7.2  7.1
## [16]  6.9  6.8  6.7  6.3  5.4
  1. ¿Cuál ha sido la nota máxima?
Maximo<-max(notas)
cat("La nota máxima es ",Maximo)
## La nota máxima es  10
  1. ¿En qué posición del vector está esa la nota máxima?
Max_posicion<-which.max(notas)
cat("La posición de la mayor nota es ",Max_posicion)
## La posición de la mayor nota es  5

EJERCICIO 4

A partir de los vectores alumnos y notas definidos.

alumnos <- c("Ana", "Luis", "Carlos", "María", "José", "Elena", "Pablo", "Laura", "Miguel", "Sara", "Javier", "Carmen", "Roberto", "Lucía", "Andrés", "Beatriz", "Ricardo", "Sofía", "Fernando", "Inés")
  1. Visualiza las notas de los 10 primeros alumnos.
alumnos10<-head(notas,n=10)
cat("Notas de los 10 primeros alumnos ",alumnos10)
## Notas de los 10 primeros alumnos  9.5 7.8 8.2 6.7 10 5.4 7.1 8.9 9 6.3
  1. Suma las notas de los 10 primeros alumnos del vector
suma10<-head(notas,n=10)
cat("La suma de las 10 primeras notas es ",notas)
## La suma de las 10 primeras notas es  9.5 7.8 8.2 6.7 10 5.4 7.1 8.9 9 6.3 7.5 8 6.8 9.7 7.2 8.5 6.9 9.3 7.6 8.4
  1. ¿Cuántos alumnos hay en total?
total_alumnos<-length(alumnos)
cat("El número total de alumnos es ",total_alumnos)
## El número total de alumnos es  20
  1. Suma las notas de los alumnos.
suma<-sum(notas)
cat("La suma de todas las notas es ",suma)
## La suma de todas las notas es  158.8
  1. ¿Cuántos alumnos han aprobado?
alumnos_aprobados<-which(notas>=7)
cat("Aprobaron ",length(alumnos_aprobados)," alumnos")
## Aprobaron  15  alumnos
  1. ¿Qué porcentaje de alumnos han aprobado?
porcentaje_aprobados<-(length(alumnos_aprobados)/length(alumnos))*100
cat("El ",porcentaje_aprobados,"% de alumnos han aprobado.")
## El  75 % de alumnos han aprobado.
  1. ¿Cuáles han sido las notas máxima y mínima?
cat("La nota mínima es ",min(notas))
## La nota mínima es  5.4
cat("La nota máxima es ",max(notas))
## La nota máxima es  10
  1. ¿De qué alumnos son la máxima y mínima notas?
cat(max(alumnos),"tiene la nota más alta de ",max(notas))
## Sofía tiene la nota más alta de  10
cat(min(alumnos),"tiene la nota más baja de ",min(notas))
## Ana tiene la nota más baja de  5.4
  1. Nota media de alumnos, teniendo en cuenta sólo a los que han aprobado.
media_aprobados <- mean(notas[notas >= 7])
cat("La media de los alumnos aprobados es ",media_aprobados)
## La media de los alumnos aprobados es  8.446667

Ejercicio 5: Creación y Manipulación de Vectores 1.Crea un vector llamado vec1 que contenga los números del 1 al 10

vec1<-1:10
vec1
##  [1]  1  2  3  4  5  6  7  8  9 10

2.Extrae el tercer y sexto elemento de vec1

a<-vec1[3]
a
## [1] 3
b<-vec1[6]
b
## [1] 6

3.Reemplaza el quinto elemento de vec1 por el número 99

vec1[5]<- 99
vec1
##  [1]  1  2  3  4 99  6  7  8  9 10

Ejercicio 6: Operaciones Aritméticas con Vectores Crea dos vectores vec2 y vec3 de longitud 5 con valores enteros aleatorios entre 1 y 20.

set.seed(123)  
vec2 <- sample(1:20, 5, replace = TRUE)
vec2
## [1] 15 19 14  3 10
vec3 <- sample(1:20, 5, replace = TRUE)
vec3
## [1] 18 11  5 20 14
s1 <- vec2 + vec3
s1
## [1] 33 30 19 23 24
m1 <- vec2 * vec3
m1
## [1] 270 209  70  60 140

Ejercicio 7: Funciones de Resumen 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

Calcula la media, la mediana y la desviación estándar de vec4.

x<-mean(vec4)
x
## [1] 5.625
y<-median(vec4)
y
## [1] 5.5
z<-sd(vec4)
z
## [1] 2.66927

Ejercicio 8: Filtrado de Vectores 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

Filtra y crea un nuevo vector con los números de vec5 que sean mayores que 10.

f1<- vec5[vec5>10]
f1
##  [1] 11 12 13 14 15 16 17 18 19 20

Ejercicio 9: Ordenación de Vectores 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)
vec6
## [1] 12  5 13  9  2  8 10  1

SE ORDENA DESCENDENTEMENTE

tordenado<- sort(vec6,decreasing=T)
tordenado
## [1] 13 12 10  9  8  5  2  1

ASCENDENTEMENTE

tordenado<- sort(vec6,decreasing=F)
tordenado
## [1]  1  2  5  8  9 10 12 13

Ejercicio 10: Operaciones Lógicas con Vectores

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

vec7<-c(7, 14, 3, 8, 15, 1, 6, 10)
vec7
## [1]  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.

vector <- vec7 > 5
vector
## [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.

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

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

multiplosde3 <- vec8[vec8 %% 3 == 0]
multiplosde3
## [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.

vec9<-c(2, 4, 6, 8, 10, 12, 14, 16)
vec9
## [1]  2  4  6  8 10 12 14 16

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

resultado <- sqrt(vec9)
resultado
## [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.

vec10 <- c(1, 2, 3, 4)
vec11 <- c(5, 6, 7, 8)

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

vec12 <- c(vec10, vec11)
vec12
## [1] 1 2 3 4 5 6 7 8

Ejercicio 14: Eliminación de Elementos

1.Crea un vector vec13 que contenga los números del 1 al 10.

vec13 <- 1:10

2.Elimina el cuarto y séptimo elemento de vec13.

vec13 <- vec13[-c(4, 7)]
vec13
## [1]  1  2  3  5  6  8  9 10