Desarrollar ejercicios de probabilidad.
Construir ejercicios de probabilidad conforme a partir de datos conforme la teoría de probabilidad.
El dado tramposo consiste en que el espacio muestral tiene más elementos de un mismo tipo, ejemplo tiene tres ocasiones el número 5.
La instrucción length(which(S == elemento)) determina la cantidad de ocasiones que el elemento existe en el espacio muestralS.
elemento <- 5
S <- c(1,2,3,5,5,5)
n <- length(which(S == elemento)) # 3
N <- length(S) # 6
prob <- n/N # 3/6
prob <- round(prob * 100,2)
paste ("La probabilidad de que salga un ", elemento, " es: ", prob, "%")
## [1] "La probabilidad de que salga un 5 es: 50 %"
De un conjunto de números que existen en una ruleta ¿cuál es la probabilidad de que salga al número que se le apuesta?
\(S\) serán todos los números de la ruleta, los que aparecen en la superficie de la misma.
\(N\) total de elementos de la ruleta
\(n\) cuántas ocasiones un número con respecto al total N
\(prob\) es \(\frac {n} {N}\)
numero <- 22
S <- c(0,28,9,26,30,11,7,20,32,17,5,22,34,15,3,24,36,13,1,100,27,10,25,29,12,8,19,31,18,6,21,33,16,4,23,35,14,2)
S
## [1] 0 28 9 26 30 11 7 20 32 17 5 22 34 15 3 24 36 13 1
## [20] 100 27 10 25 29 12 8 19 31 18 6 21 33 16 4 23 35 14 2
N <- length(S)
n <- length(which(S == elemento))
N
## [1] 38
n
## [1] 1
prob <- n/N # 1/38
prob <- round(prob * 100,2)
paste ("La probabilidad de que salga un número", numero, " es: ", prob, "%")
## [1] "La probabilidad de que salga un número 22 es: 2.63 %"
En un espacio muestral de los números del 1 al 50, empezando en 1 y con saltos de tres en tres \(S=1,4,7,10,13,16,19....\)
¿Cuál es la probabilidad de elegir un número primo?,
¿Cuál es la probabilidad de elegir un número par?,
¿Cuál es la probabilidad de elegir un número impar o non?
S <- seq(1, 50, 3)
primos <- c(1, 7, 13, 19, 31, 37, 43)
pares <- c(4, 10, 16, 22, 28, 34, 40, 46)
nones <- c(1, 7, 13, 19, 25, 31, 37, 43, 49)
S
## [1] 1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49
primos
## [1] 1 7 13 19 31 37 43
pares
## [1] 4 10 16 22 28 34 40 46
nones
## [1] 1 7 13 19 25 31 37 43 49
La probabilidad de elegir un número primo
La función length(primos %in% S) que utiliza el operador %in% devuelve valor booleano TRUE o FALSE para saber si un valor está contenido en un conjunto y combinado con length() determina la cantidad de ocasiones.
n.primos <- length(primos %in% S)
N <- length(S) #
n.primos
## [1] 7
N
## [1] 17
prob <- n.primos/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de que elegir un número primo es : ", prob, "%")
## [1] "La probabilidad de que elegir un número primo es : 41.18 %"
La probabilidad de elegir un número par:
n.pares <- length(pares %in% S)
N <- length(S) #
n.pares
## [1] 8
N
## [1] 17
prob <- n.pares/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de que elegir un número par es : ", prob, "%")
## [1] "La probabilidad de que elegir un número par es : 47.06 %"
La probabilidad de elegir un número non o impar:
n.nones <- length(nones %in% S)
N <- length(S) #
n.nones
## [1] 9
N
## [1] 17
prob <- n.nones/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de que elegir un número non es : ", prob, "%")
## [1] "La probabilidad de que elegir un número non es : 52.94 %"
Una bolsa contiene canicas 20 canicas, 14 rojas y 6 canicas negras,
¿cuál es la probabilidad de extraer de la bolsa una canica de color negra? 6/20
¿o una canica de color roja? 14/20
¿o una canica de color blanca?. CERO
S <- c(rep("NEGRA", 6), rep("ROJA", 14))
S
## [1] "NEGRA" "NEGRA" "NEGRA" "NEGRA" "NEGRA" "NEGRA" "ROJA" "ROJA" "ROJA"
## [10] "ROJA" "ROJA" "ROJA" "ROJA" "ROJA" "ROJA" "ROJA" "ROJA" "ROJA"
## [19] "ROJA" "ROJA"
N <- length(S) #
N
## [1] 20
negras <- rep("NEGRA", 6)
rojas <- rep("ROJA", 14)
n.negras <- length(negras %in% S)
n.rojas <- length(rojas %in% S)
n.negras
## [1] 6
n.rojas
## [1] 14
Probabilidad de canicas negras:
prob <- round(n.negras / N,2) * 100
prob
## [1] 30
Probabilidad de canicas rojas:
prob <- round(n.rojas /N, 2) * 100
prob
## [1] 70
En un espacio muestral de una lista de 70 nombres, algunos se repiten?, cual es la probabilidad de elegir a un nombre en particular?
\(S\) es el espacio muestral que contiene una lista de nombres de personas.
\(N\) El total de nombres en la lista.
\(n\) la cantidad de ocasiones que aparece un nombre en la lista.
\(prob\) es la probabilidad de elegir aleatoriamente a un nombre de la lista.
Con la función sample() se genera un nombre aleatorio a partir del espacio muestral \(S\).
Se utiliza length(which(S == nombre )) para determinar en cuántas veces existe en \(S\) el valor del nombre que ha sido generado aleatoriamente.
S <- c("Juan", "Paty", "Pedro", "Joaquín", "Lourdes", "Agustín", "Manuel", "Olga",
"Lucy", "José", "Rubén", "Pedro",
"Olga", "Luis", "Fernando", "Oscar",
"María", "Esmeralda", "Ernesto", "Saúl", "José", "María", "Pedro", "Saúl", "Ernesto", "María", "Luis", "Gerardo", "Héctor", "Saúl", "María", "Luis", "Lourdes", "Saúl", "Luis", "Fernando", "Rubén", "Agustín", "Joaquín", "Agustín", "Lucy", "José", "Juan", "Lucy", "Olga", "María", "Paty", "Olga", "María", "Paty", "Luis", "Rubén", "Oscar", "Gerardo", "Lucy", "Luis", "María", "José", "Juan", "Luis", "Lucy", "María", "Juan", "José", "Saúl", "María", "Fernando", "Oscar", "José", "Luis")
S
## [1] "Juan" "Paty" "Pedro" "Joaquín" "Lourdes" "Agustín"
## [7] "Manuel" "Olga" "Lucy" "José" "Rubén" "Pedro"
## [13] "Olga" "Luis" "Fernando" "Oscar" "María" "Esmeralda"
## [19] "Ernesto" "Saúl" "José" "María" "Pedro" "Saúl"
## [25] "Ernesto" "María" "Luis" "Gerardo" "Héctor" "Saúl"
## [31] "María" "Luis" "Lourdes" "Saúl" "Luis" "Fernando"
## [37] "Rubén" "Agustín" "Joaquín" "Agustín" "Lucy" "José"
## [43] "Juan" "Lucy" "Olga" "María" "Paty" "Olga"
## [49] "María" "Paty" "Luis" "Rubén" "Oscar" "Gerardo"
## [55] "Lucy" "Luis" "María" "José" "Juan" "Luis"
## [61] "Lucy" "María" "Juan" "José" "Saúl" "María"
## [67] "Fernando" "Oscar" "José" "Luis"
N <- length(S)
N
## [1] 70
nombre <- sample(x = S,size = 1 )
nombre
## [1] "Pedro"
n <- length(which(S == nombre ))
n
## [1] 3
prob <- n/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de elegir a ", nombre, " de la lista de pesonas es del:" , prob, "%")
## [1] "La probabilidad de elegir a Pedro de la lista de pesonas es del: 4.29 %"
Con tabla de distribución:
tabla.distribucion <- table(S)
tabla.distribucion
## S
## Agustín Ernesto Esmeralda Fernando Gerardo Héctor Joaquín José
## 3 2 1 3 2 1 2 6
## Juan Lourdes Lucy Luis Manuel María Olga Oscar
## 4 2 5 8 1 9 4 3
## Paty Pedro Rubén Saúl
## 3 3 3 5
En un espacio muestral en donde existen 6500 alumnos en una institución educativa de nivel superior que cursan diferentes carreras cada uno de ellos ¿cual es la probabilidad de elegir aleatoriamente a un estudiante una carrera en particular?
Se crea por medio de una simulación un conjunto de datos semejante al utilizado en el caso 2. El data.frame contiene dos variables: un identificador de número de alumno y la carrera que cursa.
La variable carrera contiene las carreras profesionales de una institución educativa de nivel superior.
La variable distribuyen contiene la cantidad de alumnos por cada carrera.
carreras <- c("Arquitectura", "Civil", "Sistemas", "TIC", "Gestión")
distribuyen <- c(2000, 1800, 650, 150, 1800)
carreras
## [1] "Arquitectura" "Civil" "Sistemas" "TIC" "Gestión"
distribuyen
## [1] 2000 1800 650 150 1800
Generando los datos o el espacio muestral \(S\)
En la variable S.datos se crea un conjunto de datos aleatorio de 6500 alumnos distribuidos en distintas carreras, conorme y de acuerdo a la distribución.
Dentro de la función sample() que genera valores aleatorios, existe el atributo prob que se usa prob = c(distribuyen/N) para determinar las proporciones de alumnos por carrera.
\(N\) es el total de elementos del espacio muestral 6500.
Se utiliza la semilla set.seed(2021) para que salgan los mismos resultados en la generación de alumnos.
head() y tail() indican que sólo se presenten los primeros y últimos diez registros.
N = 6500
set.seed(2021)
S.datos <- data.frame(numero = 1:N, carrera = sample(x = carreras, size = N, replace = TRUE, prob = c(distribuyen/N)))
head(S.datos, 10)
## numero carrera
## 1 1 Gestión
## 2 2 Civil
## 3 3 Civil
## 4 4 Gestión
## 5 5 Civil
## 6 6 Civil
## 7 7 Civil
## 8 8 Arquitectura
## 9 9 Civil
## 10 10 TIC
tail(S.datos, 10)
## numero carrera
## 6491 6491 Civil
## 6492 6492 Sistemas
## 6493 6493 Sistemas
## 6494 6494 Arquitectura
## 6495 6495 Sistemas
## 6496 6496 Gestión
## 6497 6497 TIC
## 6498 6498 Civil
## 6499 6499 Civil
## 6500 6500 Gestión
Generando una tabla de distribución para conocer cantidad de alumnos que se generaron o simulados por cada carrera utilizando precisamente la variable carrera del data.frame o del espacio meustral S.Datos.
tabla.distribucion <- table(S.datos$carrera)
tabla.distribucion
##
## Arquitectura Civil Gestión Sistemas TIC
## 2050 1787 1827 662 174
¿Cuál es la probabilidad de elegir a un alumno de TIC?
Se utiliza which(S.datos$carrera == “TIC”) para determinar la cantidad de \(n\), o sea el número de alumnos de esa carrera y debe concordar con la tabla de distribución.
Luego se determina de manera natural la probabilidad de que sea elegido un alumno de esa carrera.
n <- length(which(S.datos$carrera == "TIC"))
n
## [1] 174
prob <- n/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de elegir a un alumno de TIC es:" , prob, "%")
## [1] "La probabilidad de elegir a un alumno de TIC es: 2.68 %"
n <- length(which(S.datos$carrera == "Arquitectura"))
n
## [1] 2050
prob <- n/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de elegir a un alumno de Arquitectura es:" , prob, "%")
## [1] "La probabilidad de elegir a un alumno de Arquitectura es: 31.54 %"
n <- length(which(S.datos$carrera == "Sistemas"))
n
## [1] 662
prob <- n/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de elegir a un alumno de Sistemas es:" , prob, "%")
## [1] "La probabilidad de elegir a un alumno de Sistemas es: 10.18 %"
n <- length(which(S.datos$carrera == "Civil"))
n
## [1] 1787
prob <- n/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de elegir a un alumno de Civil es:" , prob, "%")
## [1] "La probabilidad de elegir a un alumno de Civil es: 27.49 %"
n <- length(which(S.datos$carrera == "Gestión"))
n
## [1] 1827
prob <- n/N #
prob <- round(prob * 100,2)
paste ("La probabilidad de elegir a un alumno de Gestión es:" , prob, "%")
## [1] "La probabilidad de elegir a un alumno de Gestión es: 28.11 %"
Durante la elaboración de este caso se aprendieron muchas nuevas herramientas y conceptos que nos ayudaron a tener una mejor comprensión de los casos de probabilidad y como es que trabajan dentro de ciertas funciones. Por ejemplo, se dio a comprender lo que es un espacio muestral, el cual es un conjunto de datos de donde se pueden o no repetir uno o más valores, justamente por eso el ejercicio nos invita a utilizar funciones como length(which(S == elemento)), que determina cuantas veces aparece un valor en el espacio muestral. A su vez, también pudimos observar como trabajan funciones con los números primos, pares e impares en conjunto con la probabilidad en un espacio muestral. Respecto a lo anterior, podemos utilizar distintas funciones según sea el propósito, un ejemplo sería utilizar la función length(primos %in% S) que hace uso del operador %in% y de esta forma devuelve un valor booleano TRUE o FALSE para poder determinar si un valor está, efectivamente, dentro de un determinado conjunto y combinado con length() nos muestra la cantidad de ocasiones.