## a
x <- 0.3*0.15
y <- 0.2*0.8
z <- 0.5*0.12
x
## [1] 0.045
y
## [1] 0.16
z
## [1] 0.06
so1l <- (x/(x+y+z))
so1l
## [1] 0.1698113
## b
k <- factorial(6)
l <- 5**6
m <- (exp(1))**-5
k
## [1] 720
l
## [1] 15625
m
## [1] 0.006737947
so2l <- (l/k)*m
so2l
## [1] 0.1462228
## c
a <- (factorial(20)/(factorial(7)*factorial(20-7)))
b <- 0.4**7
c <- 0.6**13
a
## [1] 77520
b
## [1] 0.0016384
c
## [1] 0.001306069
so3l <- a*b*c
so3l
## [1] 0.1658823
Crear el vector alumnos con 20 nombres 1. Visualízalo en pantalla 2. ¿Cuántas componentes tiene el vector alumnos? 3. ¿En qué posiciones del vector alumnos está la letra ‘A’?
Alumnos<-c("Alex","Maria","David","Estefania","Alegandro","Samantha","Jose",
"Erika","Danilo","Nohemi","Johan","Kristhel","Fabian","Camila",
"Melany","Carlos","Gaby","Melany","Daniela","Gabriel")
Alumnos #Imprimimos la variable
## [1] "Alex" "Maria" "David" "Estefania" "Alegandro" "Samantha"
## [7] "Jose" "Erika" "Danilo" "Nohemi" "Johan" "Kristhel"
## [13] "Fabian" "Camila" "Melany" "Carlos" "Gaby" "Melany"
## [19] "Daniela" "Gabriel"
length(Alumnos) #Con esta funcion contamos los componentes del vector
## [1] 20
p<-grep("A",Alumnos) #Seleccionamos las posiciones que contengas coincidencia
p #Imprimimos la variable
## [1] 1 5
crear el vector notas
notas<-c(5,6,9,4,9,8,7,5,9,6,8,5,6,7,8,9,8,5,10,6)
notas #Imprimimos la variable
## [1] 5 6 9 4 9 8 7 5 9 6 8 5 6 7 8 9 8 5 10 6
length(notas) #Con esta funcion contamos los componentes del vector
## [1] 20
sum(notas) #Esta funcion sumamos todos los elementos del vector
## [1] 140
mean(notas) #Con mean sacamos el promedio de las notas
## [1] 7
which(notas>7) #Con which indicamos las posiciones que cumplen >7
## [1] 3 5 6 9 11 15 16 17 19
sort(notas) #Con sort ordenamos de menor a mayor las notas
## [1] 4 5 5 5 5 6 6 6 6 7 7 8 8 8 8 9 9 9 9 10
sort(notas,decreasing = T) #Con sort ordenamos las notas de forma decendente pero agregando el valor TRUE para decreasing
## [1] 10 9 9 9 9 8 8 8 8 7 7 6 6 6 6 5 5 5 5 4
max(notas) #Muestra la nota mas alta del vector
## [1] 10
which(notas==10) #Indica la posicion de la nota mas alta
## [1] 19
*Una vez creados los vectores realizaremos cálculos de notas con rangos y posiciones incluyendo las caracteres que son los alumnos haciendo en algunos casos combinaciones entre los 2 vectores.
notas[1:10] #Visualizamos las 10 primeras notas imprimiendo el vector pero seleccionando un rango
## [1] 5 6 9 4 9 8 7 5 9 6
sum(notas[1:10]) #Sumamos las notas pero con un rango de elementos selecionados
## [1] 68
length(Alumnos) #Indica los elementos del vector
## [1] 20
sum(notas) #Sumamos todas las notas del vector
## [1] 140
x<-sum(notas>=7) #Sumamos los elementos que cumplen la condicion
x #Imprimimos la variable
## [1] 11
Porcentaje<-(x*100)/length(Alumnos) #Usuamos la variable x ya definida y hacemos una regla de 3 para calcular el porcentaje
cat(Porcentaje,"%") #Esta funcion son ayuda a imprimir mejor el resultado
## 55 %
cat("Nota maxima") #Impresión
## Nota maxima
max(notas) #Muestra la nota mas alta
## [1] 10
cat("Nota minima") #Impresión
## Nota minima
min(notas) #Muestra la nota mas baja
## [1] 4
cat("Alumno nota maxima") #Impresión
## Alumno nota maxima
p<-which.max(notas) #Buscamos la posicion de la nota mas alta
Alumnos[p] #Usamos la variable de la posicion para buscar al estudiante
## [1] "Daniela"
cat("Alumno nota minima") #Impresión
## Alumno nota minima
q<-which.min(notas) #Buscamos la posicion de la nota mas alta
Alumnos[q] #Usamos la variable de la posicion para buscar al estudiante
## [1] "Estefania"
y<-round(sum(notas[notas>=7])/length(notas[notas>=7]),2) #Sumamos las notas que cumplen la condicion >= 7 y dividimos para el numero de estudiantes aprobados
cat("Promedio de notas de alumnos aprobados es:",y) #Impresión
## Promedio de notas de alumnos aprobados es: 8.36
vec1 <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
vec1
## [1] 1 2 3 4 5 6 7 8 9 10
#Extrae el tercer y sexto elemento de vec1.
k1 <- vec1[-c(3,6)]
k1
## [1] 1 2 4 5 7 8 9 10
#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
vec2 <- round(runif(5, min=1, max=20))
vec2
## [1] 9 4 8 5 5
vec3 <- round(runif(5, min=1, max=20))
vec3
## [1] 4 8 3 10 13
#Suma los vectores vec2 y vec3.
suma <-outer(vec2, vec3, "+")
suma
## [,1] [,2] [,3] [,4] [,5]
## [1,] 13 17 12 19 22
## [2,] 8 12 7 14 17
## [3,] 12 16 11 18 21
## [4,] 9 13 8 15 18
## [5,] 9 13 8 15 18
#Multiplica los vectores vec2 y vec3.
mult <-outer(vec2, vec3, "*")
mult
## [,1] [,2] [,3] [,4] [,5]
## [1,] 36 72 27 90 117
## [2,] 16 32 12 40 52
## [3,] 32 64 24 80 104
## [4,] 20 40 15 50 65
## [5,] 20 40 15 50 65
vec4 <- c(3,5,7,2,8,10,6)
vec4
## [1] 3 5 7 2 8 10 6
#Calcula la media, la mediana y la desviación estándar de vec4.
med <- mean(vec4) #media
med
## [1] 5.857143
me2 <- median(vec4) #mediana
me2
## [1] 6
de <- sd(vec4) #desviación estandar
de
## [1] 2.794553
vec5 <- c(1:20) # Creamos un vector llamado "vec5", que contenga los números del 1 al 20.
vec5 # Imprimimos la variable.
## [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
vector_filtrado <- vec5[vec5>10] # Filtrar los números de vec5, que sean mayor a 10.
vector_filtrado # Imprimimos la variable.
## [1] 11 12 13 14 15 16 17 18 19 20
vec6 <- c(12,5,13,9,2,8,10,1) # Creamos un vector llamado "vec6", que contenga los números: 12,5,13,9,2,8,10,1.
vec6 # Imprimimos la variable
## [1] 12 5 13 9 2 8 10 1
sort(vec6) # Ordenamos "vec6" de menor a mayor.
## [1] 1 2 5 8 9 10 12 13
sort(vec6, decreasing=T) # Ordenamos "vec6" de mayor a menor.
## [1] 13 12 10 9 8 5 2 1
vec7 <- c(7,14,3,8,15,1,6,10) # Creamos un vector llamado "vec7", que contenga los números: 7,14,3,8,15,1,6,10.
vec7 # Imprimimos la variable.
## [1] 7 14 3 8 15 1 6 10
vector_bool <- vec7>5 # Usamos el operador relacional ">", para comparar cada número de "vec7", si es mayor a 5, nos va devolver TRUE, caso contrario es FALSE.
vector_bool # Imprimimos la variable.
## [1] TRUE TRUE FALSE TRUE TRUE FALSE TRUE TRUE
vec8 <- c(11,2,19,8,5,12,3,7) # Creamos un vector llamado "vec8", que contenga los números: 11,2,19,8,5,12,3,7.
vec8 # Imprimimos la variable
## [1] 11 2 19 8 5 12 3 7
vec8[vec8%%3==0] # Extraemos los números que sean múltiplos de 3, usamos %% (Módulo).
## [1] 12 3
vec9 <- c(2,4,6,8,10,12,14,16) # Creamos el vector llamado "vec9" y asignamos los valores
vec9 <- sqrt(vec9[1:8]) # Aplicamos la función de raíz cuadrada a cada elemento del vector
vec9 # Imprimimos el vector
## [1] 1.414214 2.000000 2.449490 2.828427 3.162278 3.464102 3.741657 4.000000
vec10 <- sample(4) # Creamos el "vector10" con los valores enteros
vec10 # Imprimimos el "vector10"
## [1] 2 4 1 3
vec11 <- sample(4) # Creamos el "vector11" con los valores enteros
vec11 # Imprimimos el "vector11"
## [1] 3 2 4 1
vec12 <- c(vec10,vec11) # Concatenamos el "vector10" y el "vector11" en el "vector12"
vec12 # Imprimimos el "vector12"
## [1] 2 4 1 3 3 2 4 1
vec13 <- 1:10 # Creamos el "vec13" con numeros del 1 al 10
vec13 # Imprimimos el "vec13"
## [1] 1 2 3 4 5 6 7 8 9 10
vec13 <- vec13[-c(4,7)] # Eliminamos el cuarto y septimo elemento del "vec13"
vec13 # Imprimimos el vector
## [1] 1 2 3 5 6 8 9 10