UNIVERSIDAD CENTRAL DEL ECUADOR

FACULTAD DE CIENCIAS ECONÓMICAS

INGENIERÍA EN ESTADÍSTICA

GRUPO 1

Autores: Alexander Cueva, Alexander Jiménez, Ismael Montesdeoca, Saúl Quishpe

Fecha de Publicación: 18/12/2022

Docente: Ing. Francisco Valverde PhD

Ejercicios con Vectores en R

Primeras funciones importantes de R:

Las siguientes funciones/operadores actúan componente por componente, devolviendo otro vector de igual tamaño:

EJERCICIO 1

Calcula los valores aproximados de:

\[ \frac{0.3*0.15}{0.3*0.15+0.2*0.8+0.5*0.12}, \frac{5^6}{6!}e^-5, \left(\begin{array}{c} {20}\\ {7} \end{array}\right)0.4^70.6^{13} \] a.- Para la primera operación, se utilizarán operaciones básicas como suma, resta, multiplicación y división.

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

b. La segunda operación necesitos funciones matemáticas, factorial y exponencial

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

c. En ese punto utilizaremos la fórmula del coeficiente binomial,que esta dado por la formula:

(factorial(20)/(factorial(7)*factorial(20-7)))*(0.4^7)*(0.6^13)
## [1] 0.1658823

EJERCICIO 2

Realiza las siguientes sumas:

\[ a. \ 1+2+3+...+1000 \ 1+2+3+...+1000 \]

a) Mediante suma de vectores

# PRIMERA FORMA:
  vec1<-c(1:1000)
  total1<-sum(vec1)
  vec2<-c(1:1000)
  total2<-sum(vec2)
  cat(total1,total2)
## 500500 500500

\[ b. \ 1+2+4+8+16+...+1024 \ 1+2+4+8+16+...+1024 \]

b) Para el literal b), hallamos la solución de tres formas:

# PRIMERA FORMA:
v1<-c(0:10)
k<-c(2^v1)
total<-sum(k)
cat(total,total)
## 2047 2047

EJERCICIO 3

El vector alumnos representa los nombres de una serie de alumnos.

Crear el vector alumnos con 20 nombres.

alumnos<-c("Juan","Paúl","Saúl","Gandy","Melany","Sofia","Mario",
           "Angel","Mariana","Pepe",
           "Pedro","Luis","Sofia","Melany","Juan",
           "Paul","Maria","Juan","Eddy","Matias")

1. Visualízalo en pantalla.

##  [1] "Nataly"  "Nicole"  "Salome"  "Gandy"   "Estefy"  "Gaby"    "Majo"   
##  [8] "David"   "Renato"  "Jossue"  "Jordan"  "Sydnee"  "Luis"    "Andrea" 
## [15] "Mykael"  "Marian"  "Danae"   "Gabriel" "Jose"    "Juan"

2. ¿Cuántos componentes tiene el vector alumnos?

Se utilizará el comando lenght.

length(alumnos)
## [1] 20

3. ¿En qué posiciones del vector alumnos está la letra ‘A’?

Usaremos el comando substr, nos sirve para extraer elementos de una subcadena y el comando which nos mostrará posición.

letrA <- substr(alumnos, 1, 1)
letrA
which(letrA == "A")
##  [1] "N" "N" "S" "G" "E" "G" "M" "D" "R" "J" "J" "S" "L" "A" "M" "M" "D" "G" "J"
## [20] "J"
## [1] 14

EJERCICIO 4

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(9,9,2,17,19,10,17,6,9, 14, 15, 9, 8,4,5,9,11,15,13,5)

1. Visualízalo en pantalla.

notas
##  [1]  9  9  2 17 19 10 17  6  9 14 15  9  8  4  5  9 11 15 13  5

2. ¿Cuántas componentes tiene?

El comando lenght para saber los componentes.

length(notas)
## [1] 20

3. ¿Cuánto suman todas las notas?

El comando sum, para obtener la suma.

sum(notas)
## [1] 206

4. ¿Cuál es la media aritmética de todas las notas?

El comando mean, para obtener la media aritmética.

mean(notas)
## [1] 10.3

5. ¿En qué posiciones están las notas mayores de 7?

El comando which para identificar los componentes que deseemos.

which(notas>7)
##  [1]  1  2  4  5  6  7  9 10 11 12 13 16 17 18 19

6. Visualiza las notas ordenadas de menor a mayor

El comando sort , para ordenarlos de forma ascendente.

sort(notas)
##  [1]  2  4  5  5  6  8  9  9  9  9  9 10 11 13 14 15 15 17 17 19

7. Visualiza las notas ordenadas de mayor a menor

El comando sort( , decreasing = TRUE), para ordenarlos de forma desscendente.

sort(notas, decreasing = TRUE)
##  [1] 19 17 17 15 15 14 13 11 10  9  9  9  9  9  8  6  5  5  4  2

8. ¿Cuál ha sido la nota máxima?

El comando max, para obtener la nota máxima.

max(notas)
## [1] 19

9. ¿En qué posición del vector está esa nota máxima?

El comando which.max( ), para identificarlo.

which.max(notas)
## [1] 5

EJERCICIO 5

A partir de los vectores alumnos y notas definidos:

1. Visualiza las notas de los 10 primeros alumnos

names(notas)<-alumnos
notas[c(1:10)]
## Nataly Nicole Salome  Gandy Estefy   Gaby   Majo  David Renato Jossue 
##      9      9      2     17     19     10     17      6      9     14

2. Suma las notas de los 10 primeros alumnos del vector

sum(notas[c(1:10)])
## [1] 112

3. ¿Cuántos alumnos hay en total?

length(alumnos)
## [1] 20

4. Suma las notas de los alumnos

sum(notas)
## [1] 206

5. ¿Cuántos alumnos han aprobado?

Para obtener el total de alumnos que aprobaron, se deben inicializar diversas variables que realizarán el respectivo conteo, además, se usará el comando condicional for, el mismo que permitirá la división entre los aprobados y reprobados.

k <- length(notas)
j <- 1
cont <- 0
cont1 <- 0

aprobados <- 1:k

for(i in 1:k){
  if(notas[i] >= 14){
    aprobados[j] <- "Aprobado" 
    cont<-cont+1
  }else{
    aprobados[j] <- "Reprobado" 
    cont1<-cont1+1
  }
  j <- j+1
}
aprobados

names(alumnos) <- aprobados
alumnos
## Reprobado Reprobado Reprobado  Aprobado  Aprobado Reprobado  Aprobado Reprobado 
##  "Nataly"  "Nicole"  "Salome"   "Gandy"  "Estefy"    "Gaby"    "Majo"   "David" 
## Reprobado  Aprobado  Aprobado Reprobado Reprobado Reprobado Reprobado Reprobado 
##  "Renato"  "Jossue"  "Jordan"  "Sydnee"    "Luis"  "Andrea"  "Mykael"  "Marian" 
## Reprobado  Aprobado Reprobado Reprobado 
##   "Danae" "Gabriel"    "Jose"    "Juan" 
## Aprobaron en total 6 alumnos.

6. ¿Qué porcentaje de alumnos han aprobado?

porcent <- (cont*100)/k
## Aprobó el  30 % del total de alumnos.

7. ¿Cuáles han sido las notas máxima y mínima?

maxxx <-max(notas)

minnn <-min(notas)
## La nota máxima es de: 19
## La nota mínima es de: 2

8. ¿De qué alumnos son la máxima y mínima notas?

## La mayor nota es de Jose con una calificación de 19
## La menor nota es de Nicole con una calificación de 2

9. Nota media de alumnos, teniendo encuenta sólo a los que han aprobado.

k <- length(notas)
cont <- 0
sum <- 0

for(i in 1:k){
  if(notas[i] >= 14){
    cont <- cont+1
    sum <- sum+notas[i]
  } 
}

media <- sum/cont
## La nota media de los alumnos que han aprobado es de: 16.16667