Identificar en una distribución normal, los valores de la curva o los valores de la función de densidad, graficar el área bajo la curva y calcular probabildiades.
Realizar distribuciones de probabilidad conforme a la distribución de probabilidad normal a partir de valores iniciales de los ejercicios identificando y visualizando la función de densidad y calculando probabilidades.
library(dplyr)
library(mosaic)
library(readr)
library(ggplot2) # Para gráficos
library(knitr) # Para formateo de datos
## Datos del ejercicio 1
datos <- read.table("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/datos/body.dat.txt", quote="\"", comment.char="")
datos <- as.data.frame(datos)
colnames(datos)[23:25] <- c("peso", "estatura", "genero")
# Solo nos interesan las tres últimas columnas
datos <- select(datos, estatura, peso, genero)
head(datos)
## estatura peso genero
## 1 174.0 65.6 1
## 2 175.3 71.8 1
## 3 193.5 80.7 1
## 4 186.5 72.6 1
## 5 187.2 78.8 1
## 6 181.5 74.8 1
tail(datos)
## estatura peso genero
## 502 157.5 76.8 0
## 503 176.5 71.8 0
## 504 164.4 55.5 0
## 505 160.7 48.6 0
## 506 174.0 66.4 0
## 507 163.8 67.3 0
ggplot(datos, aes(x = 1:nrow(datos), y = peso)) +
geom_point(colour = "Yellow")
ggplot(datos, aes(x = 1:nrow(datos), y = estatura)) +
geom_point(colour = "blue")
ggplot(datos) +
geom_histogram(aes(x = peso))
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
ggplot(datos) +
geom_histogram(aes(x = estatura))
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
datos$genero <- as.factor(datos$genero)
masculinos <- filter(datos, genero == 1)
femeninos <- filter(datos, genero == 0)
media.peso.m <- mean(masculinos$peso)
desv.std.peso.m <- sd(masculinos$peso)
media.peso.f <- mean(femeninos$peso)
desv.std.peso.f <- sd(femeninos$peso)
media.estatura.m <- mean(masculinos$estatura)
desv.std.estatura.m <- sd(masculinos$estatura)
media.estatura.f <- mean(femeninos$estatura)
desv.std.estatura.f <- sd(femeninos$estatura)
Graficar la funcion en donde $ x < 60 $
Grafica de dencidad.
plotDist("norm", mean = media.peso.m, sd = desv.std.peso.m, groups = x <= 60, type = "h", xlab = "Peso Hombres", ylab = "Densidad" )
prob <- pnorm(q = 60, mean = media.peso.m, sd = desv.std.peso.m)
paste("La probabilidad de encontrar a una persona masculino que pese menor de 60 kilogramos es de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona masculino que pese menor de 60 kilogramos es de: 4.218 %"
Graficar al funcion en donde \(x < 50\)
Grafica de densidad.
plotDist("norm", mean = media.peso.f, sd = desv.std.peso.f, groups = x <= 50, type = "h", xlab = "Peso Femenino", ylab = "Densidad" )
prob <- pnorm(q = 50, mean = media.peso.f, sd = desv.std.peso.f)
paste("La probabilidad de encontrar a una persona femenina que pese menor de 50 kilogramos es de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona femenina que pese menor de 50 kilogramos es de: 13.5143 %"
plotDist("norm", mean = media.estatura.m, sd = desv.std.estatura.m, groups = x >= 180, type = "h", xlab = "Estatura Hombres", ylab = "Densidad" )
prob <- pnorm(q = 180, mean = media.estatura.m, sd = desv.std.estatura.m, lower.tail = FALSE)
paste("La probabilidad de encontrar a una persona masculino que tenga una estatura mayor o igual de 180 de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona masculino que tenga una estatura mayor o igual de 180 de: 37.6814 %"
plotDist("norm", mean = media.estatura.m, sd = desv.std.estatura.m, groups = x >= 190, type = "h", xlab = "Estatura Hombres", ylab = "Densidad" )
prob <- pnorm(q = 190, mean = media.estatura.m, sd = desv.std.estatura.m, lower.tail = FALSE)
paste("La probabilidad de encontrar a una persona masculino que tenga una estatura mayor o igual de 190 de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona masculino que tenga una estatura mayor o igual de 190 de: 4.4012 %"
plotDist("norm", mean = media.estatura.m, sd = desv.std.estatura.m, groups = x >= 160 & x <= 170, type = "h", xlab = "Estatura Hombres", ylab = "Densidad" )
prob <- pnorm(q = 170, mean = media.estatura.m, sd = desv.std.estatura.m) - pnorm(q = 160, mean = media.estatura.m, sd = desv.std.estatura.m)
paste("La probabilidad de encontrar a una persona masculino que tenga una estatura entre 160 y 170 centímeros de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona masculino que tenga una estatura entre 160 y 170 centímeros de: 13.3723 %"
plotDist("norm", mean = media.estatura.m, sd = desv.std.estatura.m, groups = x >= 190 & x <= 195, type = "h", xlab = "Estatura Hombres", ylab = "Densidad" )
prob <- pnorm(q = 195, mean = media.estatura.m, sd = desv.std.estatura.m) - pnorm(q = 190, mean = media.estatura.m, sd = desv.std.estatura.m)
paste("La probabilidad de encontrar a una persona masculino que tenga una estatura entre 190 y 195 centímeros es de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona masculino que tenga una estatura entre 190 y 195 centímeros es de: 3.5858 %"
plotDist("norm", mean = media.estatura.f, sd = desv.std.estatura.f, groups = x >= 180, type = "h", xlab = "Estatura Mujeres", ylab = "Densidad" )
prob <- pnorm(q = 180, mean = media.estatura.f, sd = desv.std.estatura.f, lower.tail = FALSE)
paste("La probabilidad de encontrar a una persona femenino que tenga una estatura mayor o igual de 180 de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona femenino que tenga una estatura mayor o igual de 180 de: 1.0403 %"
plotDist("norm", mean = media.estatura.f, sd = desv.std.estatura.f, groups = x >= 190, type = "h", xlab = "Estatura Mujeres", ylab = "Densidad" )
prob <- pnorm(q = 190, mean = media.estatura.f, sd = desv.std.estatura.f, lower.tail = FALSE)
paste("La probabilidad de encontrar a una persona femenino que tenga una estatura mayor o igual de 190 de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona femenino que tenga una estatura mayor o igual de 190 de: 0.0062 %"
plotDist("norm", mean = media.estatura.f, sd = desv.std.estatura.f, groups = x >= 160 & x <= 170, type = "h", xlab = "Estatura Mujeres", ylab = "Densidad" )
prob <- pnorm(q = 170, mean = media.estatura.f, sd = desv.std.estatura.f) - pnorm(q = 160, mean = media.estatura.f, sd = desv.std.estatura.f)
paste("La probabilidad de encontrar a una persona femenino que tenga una estatura entre 160 y 170 centímeros de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona femenino que tenga una estatura entre 160 y 170 centímeros de: 55.5039 %"
plotDist("norm", mean = media.estatura.f, sd = desv.std.estatura.f, groups = x >= 190 & x <= 195, type = "h", xlab = "Estatura Mujeres", ylab = "Densidad" )
prob <- pnorm(q = 195, mean = media.estatura.f, sd = desv.std.estatura.f) - pnorm(q = 190, mean = media.estatura.f, sd = desv.std.estatura.f)
paste("La probabilidad de encontrar a una persona femenino que tenga una estatura entre 190 y 195 centímeros es de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona femenino que tenga una estatura entre 190 y 195 centímeros es de: 0.006 %"
plotDist("norm", mean = mean(datos$estatura), sd = sd(datos$estatura), groups = x >= 160 & x <= 170, type = "h", xlab = "Estatura Hombres y Mujeres", ylab = "Densidad" )
prob <- pnorm(q = 170, mean = mean(datos$estatura), sd = sd(datos$estatura)) - pnorm(q = 160, mean = mean(datos$estatura), sd = sd(datos$estatura))
paste("La probabilidad de encontrar a una persona femenino que tenga una estatura entre 160 y 170 centímeros es de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona femenino que tenga una estatura entre 160 y 170 centímeros es de: 33.3526 %"
……Pesos………..
Tenemos que la probabilidad de encontrar a una persona masculina que tenga un peso menor a 60Kg es del 4.218%
Tenemos para la probabilidad de encontranos a una persona femenina que tenga un peso menor o igual a 50Kg es del 13.5%
……Estaturas Hombres…….
Para la probabilidad de tener a una persona masculina con una estutura mayor o igual a 1.8mt es igual al 37.6%, y para estaturas mayores a 1.9mt su probabilidad es de 4.4%, para estaturas en rangos por ejemplo que este entre 1.6mt y 1.7mt es de 13.3%, para estaturas mayores que esten entre 1.9mt y 1.95mt seria solamente del 3.5%.
……Estaturas Mujeres…….
Para encontrar la probabilidad de tener a una persona que tenga una estatura que sea mayor o igual a 1.8mt seria del 1%, para rangos que una persona femenina tenga estatura mayor o igual a 1.9mt es de 0.006%, para rango de 1.6mt a 1.7mt es de 55.5%, para 1.9mt a 1.95mt su probabilidad es del 0.006%.
para tener una probabilidad de encontrar a una persona masculina o femenina que tenga estatura de un rang entre 1.6mt a 1.7mt seria del 33.3%.
para concluir identificamos que la mayoria de las mujeres miden de 1.6mt a 1.7mt mientras que los hombres la mayoriar de ellos miden de 1.7 a 1.85mt, mientras que el peso que mas tiene las mujeres es de 60kg mientras que los hombre tienen la mayor parate de ellos mayor a 70kgy menor a 90kg.
Una empresa de material eléctrico fabrica bombillas (focos) de luz que tienen una duración, antes de quemarse (fundirse), que se distribuye normalmente con media igual a 800 horas y una desviación estándar de 40 horas. Walpole et al. (2012)].
Valores iniciales \(\mu = 800\) \(\sigma = 40\)
media <- 800
desv.stadandar <- 40
\(778 \leq x \leq 834\)
plotDist("norm", mean = media, sd = desv.stadandar, groups = x >= 778 & x <= 834, type = "h", xlab = "Distribución de la duración bombillas (focos)", ylab = "Densidad" )
prob <- pnorm(q = 834, mean = media, sd = desv.stadandar) - pnorm(q = 778, mean = media, sd = desv.stadandar)
paste("La probabilidad de que una bombilla se queme entre 778 y 834 horas es:", round(prob * 100, 4), "%")
## [1] "La probabilidad de que una bombilla se queme entre 778 y 834 horas es: 51.1178 %"
plotDist("norm", mean = media, sd = desv.stadandar, groups = x >= 850 & x <= 900, type = "h", xlab = "Distribución de la duración bombillas (focos)", ylab = "Densidad" )
prob <- pnorm(q = 900, mean = media, sd = desv.stadandar) - pnorm(q = 850, mean = media, sd = desv.stadandar)
paste("La probabilidad de que una bombilla se queme entre 850 y 900 horas es:", round(prob * 100, 4), "%")
## [1] "La probabilidad de que una bombilla se queme entre 850 y 900 horas es: 9.944 %"
Los sueldos mensuales en una empresa siguen una distribución normal con media de 1200 soles, y desviación estándar de 200 soles.
Valores iniciales \(\mu = 1200\) \(\sigma = 200\)
media <- 1200
desv.stadandar <- 200
plotDist("norm", mean = media, sd = desv.stadandar, groups = x >= 1000 & x <= 1550, type = "h", xlab = "Distribución de la duración bombillas (focos)", ylab = "Densidad" )
prob <- pnorm(q = 1550, mean = media, sd = desv.stadandar) - pnorm(q = 1000, mean = media, sd = desv.stadandar)
paste("La probabilidad de que una persoan gane entre 1000 y 1550 soles es de:", round(prob * 100, 4), "%")
## [1] "La probabilidad de que una persoan gane entre 1000 y 1550 soles es de: 80.1286 %"
plotDist("norm", mean = media, sd = desv.stadandar, groups = x <= 1000, type = "h", xlab = "Distribución de la duración bombillas (focos)", ylab = "Densidad" )
prob <- pnorm(q = 1000, mean = media, sd = desv.stadandar, lower.tail = TRUE)
paste("La probabilidad de que una persoan gane menos de 1000 soles es de:", round(prob * 100,4), "%")
## [1] "La probabilidad de que una persoan gane menos de 1000 soles es de: 15.8655 %"