En el presente informe vizualizará 5 ejercicios diferentes que requieren el uso de vectores y fueron elaborados en el programa RStudio, cada uno con su respectivo planteamiento del problema y resultados.
Calcular los valores numéricos aproximados de:
\[\frac {0.3*0.5}{0.3*0.12+0.2*0.8+0.5*0.12},\frac {5^6}{6!}e^{-5}, \binom{20}{7}0.4^{7} 0.6^{13} \]
Pasos a seguir:
Operación 1: Para la primera operación crearemos la variable cal1 en la cual realizaremos cálculos básicos como súma, multiplicación y división.
cal1 <- (0.3*0.15)/((0.3*0.15)+(0.2*0.8)+(0.5*0.12))
## [1] 0.1698113
Operación 2: En esta operación crearemos la variable cal2, usaremos la función factorial(x) para que nos devuelva el factorial de un número
cal2 <- ((5^6)/factorial(6))*exp(-5)
## [1] 0.1462228
Operación 3: Para esta operación creamos las variables: k para asignar el valor de 20, n para el valor de 7, num1 para calcular la primera parte de la operación, num2 para la otra parte de la operación y resultado para calcular el resultado final.
k <- 7
n <- 20
num1 <- factorial(n)/(factorial(k)*factorial(n-k))
num2 <- (0.4^7)*(0.6^13)
resultado <- num1*num2
## [1] 0.1658823
Realiza las siguientes sumas:
Primera Suma
\[ 1+2+3...+1001+2+3+...+1000 \]
Pasos a seguir:
Paso 1: Crear dos vectores de enteros del 1 al 1000 y en dos variables sumaremos los valores de los vectores.
v1 <- 1:1000
vec1 <- sum(v1)
v2 <- 1:1000
vec2 <- sum(v2)
Paso 2: Creamos un vector vectort donde concatenamos la suma del vec1 y vec2
vectort <- c(vec1, vec2)
## [1] 500500 500500
Segunda Suma
\[ 1+2+4+8+16+...+1024+1+2+4+8+16+...+1024 \]
Pasos a seguir:
Paso 1: Crear un vector del 0 al 10
vector1 <- c(0:10)
Paso 2: En otro vector haremos el cálculo en el que 2 se elvará a cada valor del vector1
vector2 <- c(2^vector1)
Paso 3: En la variable t1 realizaremos la suma del resultado del vector2
t1<-sum(vector2)
Paso 4: En el vector vector3 concatenaremos los resultados de la suma y presentamos la respuesta
vector3 <- c(t1,t1)
## [1] 2047 2047
El vector alumnos representa los nombres de una serie de alumnos.
Crear el vector alumnos con 20 nombres.
alumnos <- c("Juan","Alan","David","Jenifer","Andrea","Mavelin","Mishel","Francisco"
,"Martha","Ariel","Benjamin","Gabriel","Milena","Jaslady","Alexandro","Tatiana"
,"Jessica","Ana","Alma","Leo")
alumnos
## [1] "Juan" "Alan" "David" "Jenifer" "Andrea" "Mavelin"
## [7] "Mishel" "Francisco" "Martha" "Ariel" "Benjamin" "Gabriel"
## [13] "Milena" "Jaslady" "Alexandro" "Tatiana" "Jessica" "Ana"
## [19] "Alma" "Leo"
Para saber cuantos componentes tiene un vector se usa la función length(), dentro de la función colocamos solo el nombre del vector.
length(alumnos)
## [1] 20
Primero usaremos la función substr la cual sirve para extraer un elemento de una subcadena y luego la función which(x) la cual da el vector de “posiciones” donde x es TRUE. El argumento suele ser una comparación.
letraA <- substr(alumnos,1,1)
letraA
## [1] "J" "A" "D" "J" "A" "M" "M" "F" "M" "A" "B" "G" "M" "J" "A" "T" "J" "A" "A"
## [20] "L"
which(letraA =="A")
## [1] 2 5 10 15 18 19
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.
Crear el vector notas
notas <- c(10,18,15,16,12,13,14,14,18,20,19,18,11,10,10,5,9,17,6,17)
notas
## [1] 10 18 15 16 12 13 14 14 18 20 19 18 11 10 10 5 9 17 6 17
Usamos la función length () para saber cuantos componentes tiene el vector notas
length(notas)
## [1] 20
Usamos la función sum() la cual sumará cada componente del vector notas
sum(notas)
## [1] 272
Con la función mean() sabremos el promedio o la media aritmética del vector notas
mean(notas)
## [1] 13.6
Para calcular la posición de los elementos cuya nota sea mayor a 7 utilizamos la función which() ya que nos devuelve la posición de los elementos de un vector, siempre y cuando cumpla ciertas características.
which(notas>7)
## [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 17 18 20
Con la función sort() se ordenan de formar ascendente los elementos de un vector
sort(notas)
## [1] 5 6 9 10 10 10 11 12 13 14 14 15 16 17 17 18 18 18 19 20
Usamos sort(vector, decreasing=TRUE) debemos colocamos drecreasing=TRUE para que ordene de forma descendente los elementos de un vector
sort(notas, decreasing=TRUE)
## [1] 20 19 18 18 18 17 17 16 15 14 14 13 12 11 10 10 10 9 6 5
Usamos la función max() para saber el valor máximo en un vector
max(notas)
## [1] 20
9.¿En qué posición del vector está esa nota máxima?
La función which.max()nos indica la posición del valor máximo de un vector
which.max(notas)
## [1] 10
A partir de los vectores alumnos y notas definidos:
Colocamos el respectivo encabezado, luego las notas y los nombres de los alumnos, y combinamos ambos vectores, para vizualizar de una mejor manera el nombre de los alumnos y sus respectivas notas.
alumnos <- c("Juan","Alan","David","Jenifer","Andrea","Mavelin","Mishel","Francisco"
,"Martha","Ariel","Benjamin","Gabriel","Milena","Jaslady","Alexandro","Tatiana"
,"Jessica","Ana","Alma","Leo")
notas <- c(10,18,15,16,12,13,14,14,18,20,19,18,11,10,10,5,9,17,6,17)
names(notas) <- alumnos
notas
## Juan Alan David Jenifer Andrea Mavelin Mishel Francisco
## 10 18 15 16 12 13 14 14
## Martha Ariel Benjamin Gabriel Milena Jaslady Alexandro Tatiana
## 18 20 19 18 11 10 10 5
## Jessica Ana Alma Leo
## 9 17 6 17
Creamos una variable n1 en la cual solo estarán las notas de los 10 primeros alumnos
n1 <- notas[1:10]
n1
## Juan Alan David Jenifer Andrea Mavelin Mishel Francisco
## 10 18 15 16 12 13 14 14
## Martha Ariel
## 18 20
2.Suma las notas de los 10 primeros alumnos del vector
Usamos sum() para sumar los 10 primeros elementos del vector notas
sum(n1)
## [1] 150
Usamos length() para saber cuantos elementos hay en el vector alumnos
length(alumnos)
## [1] 20
sum(notas)
## [1] 272
Crearemos una variable aprobados y en esta usaremos la función which() poniendo como condición que notas sea mayor o igual a 14 para aprobar, también crearemos la variable apro1 y con length() sabremos cuantos alumnos han aprobado
aprobados <- which(notas>=14)
apro1 <- length(aprobados)
cat("Han aprobado",apro1,"alumnos")
## Han aprobado 11 alumnos
Crearemos la variable notas1 en la cual estará el número de notas y en la variable apro1 dividiremos el total de alumnos aprobados para el total de notas y multiplicamos por 100 para saber el porcentaje de alumnos aprobados.
notas1 <- length(notas)
apro <- (apro1/notas1)*100
Imprimimos la respuesta usando la función cat()
cat("El",apro,"% de alumnos han aprobado")
## El 55 % de alumnos han aprobado
mx <- max(notas)
mn <- min(notas)
cat("La nota máxima es:",mx,"\n",
"La nota mínima es: ",mn)
## La nota máxima es: 20
## La nota mínima es: 5
not_max <- max(notas)
alum_max <-alumnos[which.max(notas)]
not_min <- min(notas)
alum_min <- alumnos[which.min(notas)]
cat(alum_max,"tiene la nota máxima de",not_max,"\n"
,alum_min,"tiene la nota mínima de",not_min)
## Ariel tiene la nota máxima de 20
## Tatiana tiene la nota mínima de 5
notmed <- mean(aprobados)
cat("La nota media de los alumnos que aprobaron es:",notmed)
## La nota media de los alumnos que aprobaron es: 9.454545