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 probabilidades.
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.
La distribución continua de probabilidad más importante en todo el campo de la estadística es la distribución normal. Su gráfica, que se denomina curva normal, es la curva con forma de campana (walpole2012b?).
La distribución normal a menudo se denomina distribución Gaussiana, en honor de Karl Friedrich Gauss (1777-1855), quien también derivó su ecuación a partir de un estudio de errores en mediciones repetidas de la misma cantidad (walpole2012c?).
En a imagen anterior se identifican dos valores que se requieren para suponer una curva de distribución normal, la media \(\mu\) y la desviación estándar \(\sigma\) de los datos.
Para distribución normal estándar con media igual a 0 y desviación = 1
Para distribución normal
\[ f(x)=\frac{1}{\sqrt{2\cdot\pi\cdot\sigma}}\cdot e^{-\frac{1}{2}\cdot(\frac{x-\mu}{\sigma})^2} \]
Ejemplo de calcular la densidad para un valor de \(x\) de acuerdo a la distribución normal con media y desviación.
Valor de \(x=18\); \(media=20\); \(desv=2\);\(e=2.71828\);\(pi=3.14159\)
x= 18
media <- 20
desv <- 2
e <- exp(1)
pi <- pi
x; media; desv; e; pi
## [1] 18
## [1] 20
## [1] 2
## [1] 2.718282
## [1] 3.141593
prob = 1 / (desv* sqrt(2 * pi)) * (e ^(-(x-media)^2 / (2*desv^2)))
prob
## [1] 0.1209854
Se utiliza dnorm() para calcular la función de densidad o el punto en donde se cruzan el valor de con su probabilidad en distribuión normal.
dnorm(x = x, mean = media, sd = desv)
## [1] 0.1209854
La distribución normal trata con variables aleatorias continuas, del tal forma que el valor de la probabilidad acumulada es el área bajo la curva y no la sumatoria de la función de densidad.
¿Cómo determinar el área bajo la curva?, con pnorm().
options(scipen=999) # Notación normal
x <- seq(from= 0, to = 18, by = 0.5)
tabla <- data.frame(x = x, f.prob.x=dnorm(x = x, mean = media, sd = desv), f.acum.x = pnorm(q = x, mean = media, sd = desv))
tabla
## x f.prob.x f.acum.x
## 1 0.0 0.00000000000000000000003847299 0.000000000000000000000007619853
## 2 0.5 0.00000000000000000000045427672 0.000000000000000000000092234135
## 3 1.0 0.00000000000000000000503896770 0.000000000000000000001049451508
## 4 1.5 0.00000000000000000005250724915 0.000000000000000000011224633591
## 5 2.0 0.00000000000000000051398867858 0.000000000000000000112858840595
## 6 2.5 0.00000000000000000472655194095 0.000000000000000001066763737547
## 7 3.0 0.00000000000000004083117815835 0.000000000000000009479534822203
## 8 3.5 0.00000000000000033135687279844 0.000000000000000079197263146425
## 9 4.0 0.00000000000000252613554176845 0.000000000000000622096057427178
## 10 4.5 0.00000000000001809147225556259 0.000000000000004594627435778595
## 11 5.0 0.00000000000012171602665145048 0.000000000000031908916729108963
## 12 5.5 0.00000000000076926897528063751 0.000000000000208385815867206946
## 13 6.0 0.00000000000456736020418229682 0.000000000001279812543885835164
## 14 6.5 0.00000000002547468979421842097 0.000000000007392257778017823239
## 15 7.0 0.00000000013347783073814259590 0.000000000040160005838591177909
## 16 7.5 0.00000000065700090907794200519 0.000000000205226342521893884673
## 17 8.0 0.00000000303794142491164304368 0.000000000986587645037698090459
## 18 8.5 0.00000001319621601785286764516 0.000000004462172453901612492137
## 19 9.0 0.00000005384880021271638037700 0.000000018989562465887721183500
## 20 9.5 0.00000020642354943149991916302 0.000000076049605164887131873372
## 21 10.0 0.00000074335975736714883900860 0.000000286651571879193911851491
## 22 10.5 0.00000251475364429622269416345 0.000001017083242568703380505173
## 23 11.0 0.00000799187055345273730582942 0.000003397673124730059827924844
## 24 11.5 0.00002385931827060247588465774 0.000010688525774934417027391131
## 25 12.0 0.00006691511288244268382003482 0.000031671241833119924326961359
## 26 12.5 0.00017629784118372270333881258 0.000088417285200803881848458099
## 27 13.0 0.00043634134752288007697007544 0.000232629079035524935535964031
## 28 13.5 0.00101452402864988405241375435 0.000577025042390767110671301321
## 29 14.0 0.00221592420596900376364435381 0.001349898031630094577190681626
## 30 14.5 0.00454678125079552644671743167 0.002979763235054556404224346267
## 31 15.0 0.00876415024678427016791015802 0.006209665325776134864321775808
## 32 15.5 0.01586982591783370893923077460 0.012224472655044706093097062194
## 33 16.0 0.02699548325659403141818515337 0.022750131948179212054705899959
## 34 16.5 0.04313865941325576575104960853 0.040059156863817099725189052606
## 35 17.0 0.06475879783294587188624547025 0.066807201268858071308009982658
## 36 17.5 0.09132454269451095729692724490 0.105649773666855240072948163288
## 37 18.0 0.12098536225957168266376129395 0.158655253931457046467912164189
¿Cuánto vale el área bajo la curva hasta 18 ó \(P(x < 18)\)?
library (ggplot2) # Graficos
ggplot(data = tabla, aes(x,f.prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
geom_hline(yintercept = dnorm(x = max(x), mean = media, sd = desv), col='red') +
geom_vline(xintercept = max(x), col='red') +
ggtitle(label = "Distribución normal", subtitle = paste("Media = ", media, "; Desviación =", desv, "; valor de x de 0 hasta ",max(x)))
library("mosaic")
## Registered S3 method overwritten by 'mosaic':
## method from
## fortify.SpatialPolygonsDataFrame ggplot2
##
## The 'mosaic' package masks several functions from core packages in order to add
## additional features. The original behavior of these functions should not be affected by this.
##
## Attaching package: 'mosaic'
## The following objects are masked from 'package:dplyr':
##
## count, do, tally
## The following object is masked from 'package:Matrix':
##
## mean
## The following object is masked from 'package:ggplot2':
##
## stat
## The following objects are masked from 'package:stats':
##
## binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
## quantile, sd, t.test, var
## The following objects are masked from 'package:base':
##
## max, mean, min, prod, range, sample, sum
plotDist("norm", mean = media, sd = desv, groups = x <= 18, type = "h", xlab ="Valores de la variable continua X", ylab = "Densidad", main='Densidad',sub = paste('Media= ', media, ' Desv Std=', desv ))
library(dplyr)
library(mosaic)
library(readr)
library(ggplot2) # Para gráficos
library(knitr) # Para formateo de datos
library(cowplot) #Imágenes en el mismo renglón
options(scipen=999) # Notación normal
#datos <- read.table("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/datos/body.dat.txt", quote="\"", comment.char="")
datos <- read.csv("https://raw.githubusercontent.com/rpizarrog/Trabajos-en-R-AD2021/main/datos/estatura%20peso%20generos.csv")
#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)
Estatura, altura en centímetros de una persona
Peso: Peso de una persona medido en kilogramos
Genero: 0 Femenino, 1 Masculino
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 = "red")
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`.
Se extraen conjuntos de datos para masculinos y femeninos respectivamente.
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.m
## [1] 78.14453
desv.std.peso.m
## [1] 10.51289
media.peso.f <- mean(femeninos$peso)
desv.std.peso.f <- sd(femeninos$peso)
media.peso.f
## [1] 60.60038
desv.std.peso.f
## [1] 9.615699
Se toman los valores mínimos y máximos de pesos, de esos valores se disminuye en diez a mínimo y aumenta en diez a máximo para contemplar mayor rango.
x <- round(min(masculinos$peso-10),0):round(max(masculinos$peso+10),0)
tabla.peso.masculino <- data.frame(x=x, prob.x = dnorm(x = x, mean = media.peso.m, sd = desv.std.peso.m), f.acum.x = pnorm(q = x, mean = media.peso.m, sd = desv.std.peso.m))
kable(tabla.peso.masculino, caption = "Peso Muestra Masculino")
| x | prob.x | f.acum.x |
|---|---|---|
| 44 | 0.0001943 | 0.0005814 |
| 45 | 0.0002635 | 0.0008087 |
| 46 | 0.0003540 | 0.0011155 |
| 47 | 0.0004714 | 0.0015257 |
| 48 | 0.0006220 | 0.0020694 |
| 49 | 0.0008134 | 0.0027834 |
| 50 | 0.0010541 | 0.0037126 |
| 51 | 0.0013536 | 0.0049111 |
| 52 | 0.0017227 | 0.0064430 |
| 53 | 0.0021726 | 0.0083834 |
| 54 | 0.0027153 | 0.0108191 |
| 55 | 0.0033630 | 0.0138490 |
| 56 | 0.0041277 | 0.0175841 |
| 57 | 0.0050206 | 0.0221471 |
| 58 | 0.0060518 | 0.0276714 |
| 59 | 0.0072290 | 0.0342994 |
| 60 | 0.0085574 | 0.0421798 |
| 61 | 0.0100387 | 0.0514651 |
| 62 | 0.0116703 | 0.0623073 |
| 63 | 0.0134449 | 0.0748534 |
| 64 | 0.0153498 | 0.0892405 |
| 65 | 0.0173668 | 0.1055903 |
| 66 | 0.0194718 | 0.1240034 |
| 67 | 0.0216353 | 0.1445535 |
| 68 | 0.0238227 | 0.1672820 |
| 69 | 0.0259950 | 0.1921939 |
| 70 | 0.0281098 | 0.2192529 |
| 71 | 0.0301230 | 0.2483797 |
| 72 | 0.0319895 | 0.2794500 |
| 73 | 0.0336657 | 0.3122952 |
| 74 | 0.0351107 | 0.3467043 |
| 75 | 0.0362878 | 0.3824272 |
| 76 | 0.0371665 | 0.4191803 |
| 77 | 0.0377237 | 0.4566529 |
| 78 | 0.0379443 | 0.4945154 |
| 79 | 0.0378225 | 0.5324273 |
| 80 | 0.0373615 | 0.5700472 |
| 81 | 0.0365736 | 0.6070412 |
| 82 | 0.0354799 | 0.6430924 |
| 83 | 0.0341089 | 0.6779085 |
| 84 | 0.0324955 | 0.7112293 |
| 85 | 0.0306796 | 0.7428320 |
| 86 | 0.0287042 | 0.7725353 |
| 87 | 0.0266142 | 0.8002022 |
| 88 | 0.0244540 | 0.8257403 |
| 89 | 0.0222668 | 0.8491012 |
| 90 | 0.0200926 | 0.8702783 |
| 91 | 0.0179674 | 0.8893028 |
| 92 | 0.0159223 | 0.9062398 |
| 93 | 0.0139828 | 0.9211827 |
| 94 | 0.0121690 | 0.9342474 |
| 95 | 0.0104951 | 0.9455673 |
| 96 | 0.0089699 | 0.9552872 |
| 97 | 0.0075973 | 0.9635580 |
| 98 | 0.0063768 | 0.9705325 |
| 99 | 0.0053041 | 0.9763609 |
| 100 | 0.0043722 | 0.9811877 |
| 101 | 0.0035715 | 0.9851490 |
| 102 | 0.0028912 | 0.9883708 |
| 103 | 0.0023194 | 0.9909675 |
| 104 | 0.0018439 | 0.9930416 |
| 105 | 0.0014527 | 0.9946834 |
| 106 | 0.0011342 | 0.9959712 |
| 107 | 0.0008775 | 0.9969723 |
| 108 | 0.0006728 | 0.9977436 |
| 109 | 0.0005112 | 0.9983323 |
| 110 | 0.0003850 | 0.9987778 |
| 111 | 0.0002873 | 0.9991117 |
| 112 | 0.0002124 | 0.9993599 |
| 113 | 0.0001557 | 0.9995426 |
| 114 | 0.0001130 | 0.9996759 |
| 115 | 0.0000814 | 0.9997723 |
| 116 | 0.0000580 | 0.9998414 |
| 117 | 0.0000410 | 0.9998905 |
| 118 | 0.0000287 | 0.9999250 |
| 119 | 0.0000199 | 0.9999491 |
| 120 | 0.0000137 | 0.9999657 |
| 121 | 0.0000093 | 0.9999771 |
| 122 | 0.0000063 | 0.9999849 |
| 123 | 0.0000042 | 0.9999901 |
| 124 | 0.0000028 | 0.9999936 |
| 125 | 0.0000018 | 0.9999958 |
| 126 | 0.0000012 | 0.9999973 |
x <- round(min(masculinos$peso-10),0):round(max(masculinos$peso+10),0)
tabla.peso.femenino <- data.frame(x=x, prob.x = dnorm(x = x, mean = media.peso.f, sd = desv.std.peso.f), f.acum.x = pnorm(q = x, mean = media.peso.f, sd = desv.std.peso.f))
kable(tabla.peso.femenino, caption = "Peso Muestra Femenino")
| x | prob.x | f.acum.x |
|---|---|---|
| 44 | 0.0093485 | 0.0421392 |
| 45 | 0.0111267 | 0.0523603 |
| 46 | 0.0131007 | 0.0644580 |
| 47 | 0.0152589 | 0.0786232 |
| 48 | 0.0175815 | 0.0950307 |
| 49 | 0.0200398 | 0.1138315 |
| 50 | 0.0225960 | 0.1351430 |
| 51 | 0.0252042 | 0.1590409 |
| 52 | 0.0278111 | 0.1855511 |
| 53 | 0.0303575 | 0.2146430 |
| 54 | 0.0327805 | 0.2462249 |
| 55 | 0.0350163 | 0.2801416 |
| 56 | 0.0370021 | 0.3161741 |
| 57 | 0.0386800 | 0.3540430 |
| 58 | 0.0399989 | 0.3934143 |
| 59 | 0.0409180 | 0.4339075 |
| 60 | 0.0414078 | 0.4751070 |
| 61 | 0.0414528 | 0.5165747 |
| 62 | 0.0410515 | 0.5578638 |
| 63 | 0.0402167 | 0.5985330 |
| 64 | 0.0389750 | 0.6381613 |
| 65 | 0.0373654 | 0.6763603 |
| 66 | 0.0354370 | 0.7127858 |
| 67 | 0.0332465 | 0.7471469 |
| 68 | 0.0308559 | 0.7792121 |
| 69 | 0.0283291 | 0.8088133 |
| 70 | 0.0257295 | 0.8358461 |
| 71 | 0.0231171 | 0.8602681 |
| 72 | 0.0205465 | 0.8820943 |
| 73 | 0.0180653 | 0.9013909 |
| 74 | 0.0157128 | 0.9182679 |
| 75 | 0.0135197 | 0.9328698 |
| 76 | 0.0115076 | 0.9453677 |
| 77 | 0.0096895 | 0.9559498 |
| 78 | 0.0080710 | 0.9648134 |
| 79 | 0.0066504 | 0.9721578 |
| 80 | 0.0054210 | 0.9781780 |
| 81 | 0.0043713 | 0.9830597 |
| 82 | 0.0034869 | 0.9869757 |
| 83 | 0.0027516 | 0.9900833 |
| 84 | 0.0021479 | 0.9925228 |
| 85 | 0.0016587 | 0.9944173 |
| 86 | 0.0012671 | 0.9958727 |
| 87 | 0.0009575 | 0.9969788 |
| 88 | 0.0007158 | 0.9978104 |
| 89 | 0.0005294 | 0.9984289 |
| 90 | 0.0003873 | 0.9988839 |
| 91 | 0.0002803 | 0.9992151 |
| 92 | 0.0002007 | 0.9994536 |
| 93 | 0.0001421 | 0.9996234 |
| 94 | 0.0000996 | 0.9997431 |
| 95 | 0.0000690 | 0.9998265 |
| 96 | 0.0000473 | 0.9998840 |
| 97 | 0.0000321 | 0.9999233 |
| 98 | 0.0000215 | 0.9999498 |
| 99 | 0.0000143 | 0.9999674 |
| 100 | 0.0000094 | 0.9999791 |
| 101 | 0.0000061 | 0.9999867 |
| 102 | 0.0000039 | 0.9999917 |
| 103 | 0.0000025 | 0.9999948 |
| 104 | 0.0000016 | 0.9999968 |
| 105 | 0.0000010 | 0.9999981 |
| 106 | 0.0000006 | 0.9999988 |
| 107 | 0.0000004 | 0.9999993 |
| 108 | 0.0000002 | 0.9999996 |
| 109 | 0.0000001 | 0.9999998 |
| 110 | 0.0000001 | 0.9999999 |
| 111 | 0.0000000 | 0.9999999 |
| 112 | 0.0000000 | 1.0000000 |
| 113 | 0.0000000 | 1.0000000 |
| 114 | 0.0000000 | 1.0000000 |
| 115 | 0.0000000 | 1.0000000 |
| 116 | 0.0000000 | 1.0000000 |
| 117 | 0.0000000 | 1.0000000 |
| 118 | 0.0000000 | 1.0000000 |
| 119 | 0.0000000 | 1.0000000 |
| 120 | 0.0000000 | 1.0000000 |
| 121 | 0.0000000 | 1.0000000 |
| 122 | 0.0000000 | 1.0000000 |
| 123 | 0.0000000 | 1.0000000 |
| 124 | 0.0000000 | 1.0000000 |
| 125 | 0.0000000 | 1.0000000 |
| 126 | 0.0000000 | 1.0000000 |
g1 <- ggplot(data = tabla.peso.masculino, aes(x,prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Pesos MASCULINO Densidad P(x)", subtitle = paste("media = ",round(media.peso.m, 4), "desv=", round(desv.std.peso.m, 4) )) +
geom_vline(xintercept = media.peso.m, colour="red")
#g1
g2 <- ggplot(data = tabla.peso.femenino, aes(x,prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("PESO FEMENINO. Densidad P(x)", subtitle = paste("media = ",round(media.peso.f, 4), "desv=", round(desv.std.peso.f,4) )) +
geom_vline(xintercept = media.peso.f, colour="red")
#g2
plot_grid(g1, g2)
media.estatura.m <- mean(masculinos$estatura)
desv.std.estatura.m <- sd(masculinos$estatura)
media.estatura.m
## [1] 177.7453
desv.std.estatura.m
## [1] 7.183629
media.estatura.f <- mean(femeninos$estatura)
desv.std.estatura.f <- sd(femeninos$estatura)
media.estatura.f
## [1] 164.8723
desv.std.estatura.f
## [1] 6.544602
Se toman los valores mínimos y máximos de estaturas, de esos valores se disminuye en diez a mínimo y aumenta en diez a máximo para contemplar mayor rango.
x <- round(min(masculinos$estatura-10),0):round(max(masculinos$estatura+10),0)
tabla.estatura.masculino <- data.frame(x=x, prob.x = dnorm(x = x, mean = media.estatura.m, sd = desv.std.estatura.m), f.acum.x = pnorm(q = x, mean = media.estatura.m, sd = desv.std.estatura.m))
kable(tabla.estatura.masculino, caption = "Estatura Muestra Masculino")
| x | prob.x | f.acum.x |
|---|---|---|
| 147 | 0.0000058 | 0.0000093 |
| 148 | 0.0000105 | 0.0000173 |
| 149 | 0.0000185 | 0.0000315 |
| 150 | 0.0000320 | 0.0000562 |
| 151 | 0.0000543 | 0.0000984 |
| 152 | 0.0000903 | 0.0001693 |
| 153 | 0.0001472 | 0.0002859 |
| 154 | 0.0002355 | 0.0004741 |
| 155 | 0.0003695 | 0.0007720 |
| 156 | 0.0005686 | 0.0012347 |
| 157 | 0.0008582 | 0.0019393 |
| 158 | 0.0012705 | 0.0029920 |
| 159 | 0.0018448 | 0.0045344 |
| 160 | 0.0026273 | 0.0067510 |
| 161 | 0.0036698 | 0.0098756 |
| 162 | 0.0050276 | 0.0141956 |
| 163 | 0.0067555 | 0.0200542 |
| 164 | 0.0089032 | 0.0278467 |
| 165 | 0.0115085 | 0.0380133 |
| 166 | 0.0145906 | 0.0510229 |
| 167 | 0.0181431 | 0.0673516 |
| 168 | 0.0221276 | 0.0874534 |
| 169 | 0.0264692 | 0.1117262 |
| 170 | 0.0310550 | 0.1404736 |
| 171 | 0.0357361 | 0.1738683 |
| 172 | 0.0403336 | 0.2119183 |
| 173 | 0.0446489 | 0.2544416 |
| 174 | 0.0484774 | 0.3010538 |
| 175 | 0.0516240 | 0.3511688 |
| 176 | 0.0539198 | 0.4040177 |
| 177 | 0.0552368 | 0.4586815 |
| 178 | 0.0555000 | 0.5141393 |
| 179 | 0.0546943 | 0.5693246 |
| 180 | 0.0528659 | 0.6231864 |
| 181 | 0.0501179 | 0.6747493 |
| 182 | 0.0466009 | 0.7231655 |
| 183 | 0.0424991 | 0.7677559 |
| 184 | 0.0380145 | 0.8080361 |
| 185 | 0.0333506 | 0.8437254 |
| 186 | 0.0286974 | 0.8747411 |
| 187 | 0.0242194 | 0.9011789 |
| 188 | 0.0200480 | 0.9232826 |
| 189 | 0.0162765 | 0.9414086 |
| 190 | 0.0129609 | 0.9559880 |
| 191 | 0.0101227 | 0.9674899 |
| 192 | 0.0077542 | 0.9763902 |
| 193 | 0.0058259 | 0.9831453 |
| 194 | 0.0042932 | 0.9881740 |
| 195 | 0.0031029 | 0.9918458 |
| 196 | 0.0021997 | 0.9944755 |
| 197 | 0.0015294 | 0.9963228 |
| 198 | 0.0010430 | 0.9975955 |
| 199 | 0.0006976 | 0.9984556 |
| 200 | 0.0004576 | 0.9990257 |
| 201 | 0.0002945 | 0.9993964 |
| 202 | 0.0001858 | 0.9996328 |
| 203 | 0.0001150 | 0.9997806 |
| 204 | 0.0000698 | 0.9998713 |
| 205 | 0.0000416 | 0.9999259 |
| 206 | 0.0000243 | 0.9999581 |
| 207 | 0.0000139 | 0.9999767 |
| 208 | 0.0000078 | 0.9999873 |
x <- round(min(femeninos$estatura-10),0):round(max(femeninos$estatura+10),0)
tabla.estatura.femenino <- data.frame(x=x, prob.x = dnorm(x = x, mean = media.estatura.f, sd = desv.std.estatura.f), f.acum.x = pnorm(q = x, mean = media.estatura.f, sd = desv.std.estatura.f))
kable(tabla.estatura.femenino, caption = "Estatura Muestra Femenino")
| x | prob.x | f.acum.x |
|---|---|---|
| 137 | 0.0000070 | 0.0000103 |
| 138 | 0.0000133 | 0.0000201 |
| 139 | 0.0000246 | 0.0000386 |
| 140 | 0.0000445 | 0.0000722 |
| 141 | 0.0000787 | 0.0001323 |
| 142 | 0.0001358 | 0.0002372 |
| 143 | 0.0002289 | 0.0004158 |
| 144 | 0.0003770 | 0.0007132 |
| 145 | 0.0006066 | 0.0011969 |
| 146 | 0.0009536 | 0.0019655 |
| 147 | 0.0014644 | 0.0031586 |
| 148 | 0.0021968 | 0.0049680 |
| 149 | 0.0032196 | 0.0076489 |
| 150 | 0.0046097 | 0.0115295 |
| 151 | 0.0064476 | 0.0170175 |
| 152 | 0.0088102 | 0.0245998 |
| 153 | 0.0117607 | 0.0348342 |
| 154 | 0.0153372 | 0.0483303 |
| 155 | 0.0195396 | 0.0657177 |
| 156 | 0.0243190 | 0.0876024 |
| 157 | 0.0295690 | 0.1145133 |
| 158 | 0.0351228 | 0.1468424 |
| 159 | 0.0407569 | 0.1847861 |
| 160 | 0.0462034 | 0.2282939 |
| 161 | 0.0511690 | 0.2770326 |
| 162 | 0.0553606 | 0.3303735 |
| 163 | 0.0585133 | 0.3874068 |
| 164 | 0.0604184 | 0.4469834 |
| 165 | 0.0609459 | 0.5077833 |
| 166 | 0.0600592 | 0.5684026 |
| 167 | 0.0578197 | 0.6274497 |
| 168 | 0.0543791 | 0.6836408 |
| 169 | 0.0499631 | 0.7358822 |
| 170 | 0.0448463 | 0.7833331 |
| 171 | 0.0393246 | 0.8254399 |
| 172 | 0.0336870 | 0.8619440 |
| 173 | 0.0281917 | 0.8928619 |
| 174 | 0.0230484 | 0.9184454 |
| 175 | 0.0184086 | 0.9391272 |
| 176 | 0.0143635 | 0.9554614 |
| 177 | 0.0109487 | 0.9680648 |
| 178 | 0.0081531 | 0.9775655 |
| 179 | 0.0059312 | 0.9845624 |
| 180 | 0.0042153 | 0.9895967 |
| 181 | 0.0029266 | 0.9931354 |
| 182 | 0.0019851 | 0.9955656 |
| 183 | 0.0013153 | 0.9971961 |
| 184 | 0.0008514 | 0.9982648 |
| 185 | 0.0005384 | 0.9989491 |
| 186 | 0.0003327 | 0.9993773 |
| 187 | 0.0002008 | 0.9996390 |
| 188 | 0.0001184 | 0.9997952 |
| 189 | 0.0000682 | 0.9998864 |
| 190 | 0.0000384 | 0.9999383 |
| 191 | 0.0000211 | 0.9999673 |
| 192 | 0.0000113 | 0.9999830 |
| 193 | 0.0000059 | 0.9999914 |
g1 <- ggplot(data = tabla.estatura.masculino, aes(x,prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("ESTATURAS MASCULINO Densidad P(x)", subtitle = paste("media = ",round(media.estatura.m, 4), "desv=", round(desv.std.estatura.m, 4) ))+
geom_vline(xintercept = media.estatura.m, colour="red")
#g1
g2 <- ggplot(data = tabla.estatura.femenino, aes(x,prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("ESTATURAS FEMENINO. Densidad P(x)", subtitle = paste("media = ",round(media.estatura.f, 4), "desv=", round(desv.std.estatura.f, 4) )) +
geom_vline(xintercept = media.estatura.f, colour="red")
#g2
plot_grid(g1, g2)
¿Cuál es la probabilidad de encontrar a una persona masculino que pese menor o igual de 60 kilogramos?
Graficar la función en donde \(P(x \leq 60)\)
Gráfica de densidad
plotDist("norm", mean = media.peso.m, sd = desv.std.peso.m, groups = x <= 60, type = "h", xlab = "Peso Hombres", ylab = "Densidad", sub=paste("Media = ",round(media.peso.m), " Desv. Std = ", round(desv.std.peso.m,4)) )
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 %"
¿Cuál es la probabilidad de encontrar a una persona femenino que pese menor o igual de 50 kilogramos?
plotDist("norm", mean = media.peso.f, sd = desv.std.peso.f, groups = x <= 50, type = "h", xlab = "Peso Mujeres", ylab = "Densidad", sub=paste("Media = ",round(media.peso.f), " Desv. Std = ", round(desv.std.peso.f,4)) )
prob <- pnorm(q = 50, mean = media.peso.f, sd = desv.std.peso.f)
paste("La probabilidad de encontrar a una persona femenino que pese menor de 50 kilogramos es de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona femenino que pese menor de 50 kilogramos es de: 13.5143 %"
¿Cuál es la probabilidad de encontrar a una persona masculino que tenga una estatura mayor o igual de 180 centímetros?
plotDist("norm", mean = media.estatura.m, sd = desv.std.estatura.m, groups = x >= 180, type = "h", xlab = "Estatura Hombres", ylab = "Densidad", sub=paste("Media = ",round(media.estatura.m), " Desv. Std = ", round(desv.std.estatura.m,4)) )
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 %"
¿Cuál es la probabilidad de encontrar a una persona masculino que tenga una estatura mayor o igual de 190 centímetros?
plotDist("norm", mean = media.estatura.m, sd = desv.std.estatura.m, groups = x >= 190, type = "h", xlab = "Estatura Hombres", ylab = "Densidad", sub=paste("Media = ",round(media.estatura.m), " Desv. Std = ", round(desv.std.estatura.m,4)) )
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 %"
¿Cuál es la probabilidad de encontrar a una persona masculino que tenga una estatura entre 160 y 170 centímetros?
plotDist("norm", mean = media.estatura.m, sd = desv.std.estatura.m, groups = x >= 160 & x <= 170, type = "h", xlab = "Estatura Hombres", ylab = "Densidad", sub=paste("Media = ",round(media.estatura.m), " Desv. Std = ", round(desv.std.estatura.m,4)))
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 %"
¿Cuál es la probabilidad de encontrar a una persona masculino que tenga una estatura entre 190 y 195 centímetros?
plotDist("norm", mean = media.estatura.m, sd = desv.std.estatura.m, groups = x >= 190 & x <= 195, type = "h", xlab = "Estatura Hombres", ylab = "Densidad", sub=paste("Media = ",round(media.estatura.m), " Desv. Std = ", round(desv.std.estatura.m,4)) )
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 %"
¿Cuál es la probabilidad de encontrar a una persona femenino que tenga una estatura mayor o igual de 180 centímetros?
plotDist("norm", mean = media.estatura.f, sd = desv.std.estatura.f, groups = x >= 180, type = "h", xlab = "Estatura Mujeres", ylab = "Densidad", sub=paste("Media = ",round(media.estatura.f), " Desv. Std = ", round(desv.std.estatura.f,4)) )
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 %"
¿Cuál es la probabilidad de encontrar a una persona femenino que tenga una estatura mayor o igual de 190 centímetros?
plotDist("norm", mean = media.estatura.f, sd = desv.std.estatura.f, groups = x >= 190, type = "h", xlab = "Estatura Mujeres", ylab = "Densidad", sub=paste("Media = ",round(media.estatura.f), " Desv. Std = ", round(desv.std.estatura.f,4)) )
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 %"
¿Cuál es la probabilidad de encontrar a una persona femenino que tenga una estatura entre 160 y 170 centímetros?
plotDist("norm", mean = media.estatura.f, sd = desv.std.estatura.f, groups = x >= 160 & x <= 170, type = "h", xlab = "Estatura Mujeres", ylab = "Densidad", sub=paste("Media = ",round(media.estatura.f), " Desv. Std = ", round(desv.std.estatura.f,4)) )
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 %"
¿Cuál es la probabilidad de encontrar a una persona femenino que tenga una estatura entre 190 y 195 centímetros?
plotDist("norm", mean = media.estatura.f, sd = desv.std.estatura.f, groups = x >= 190 & x <= 195, type = "h", xlab = "Estatura Mujeres", ylab = "Densidad", sub=paste("Media = ",round(media.estatura.f), " Desv. Std = ", round(desv.std.estatura.f,4)) )
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 %"
¿Cuál es la probabilidad de encontrar a una persona masculino o femenino que tenga una estatura entre 160 y 170 centímetros?
plotDist("norm", mean = mean(datos$estatura), sd = sd(datos$estatura), groups = x >= 160 & x <= 170, type = "h", xlab = "Estatura Hombres y Mujeres", ylab = "Densidad", sub=paste("Media = ",round(mean(datos$estatura)), " Desv. Std = ", round(sd(datos$estatura),4)) )
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 masculino o femenino que tenga una estatura entre 160 y 170 centímetros? es de:", round(prob * 100,4), "%")
## [1] "La probabilidad de encontrar a una persona masculino o femenino que tenga una estatura entre 160 y 170 centímetros? es de: 33.3526 %"
Se crearon Diagramas tanto de dispersión del peso como dispersión de estatura
Se generaron histogramas tanto de peso como de estatura mostrándonos los datos que se pidieron en la parte de arriba , también mostramos las
Medias aritméticas y desviaciones (Estadísticos de la variable peso)
Se extraen conjuntos de datos tanto para masculinos como femeninos
A lo que la media de peso en la mujer es de :60.600
Y del hombre es de: 9.61
En la Tabla de distribución peso MASCULINO y FEMENINO
Se toman los valores mínimos y máximos de pesos, de esos valores se disminuye en diez a mínimo y aumenta en diez a máximo para contemplar mayor rango.
Generando gráficas de Densidad peso Masculino y femenino mostrando la diferencia que hay uno del otro.
Ahora hicimos lo mismo pero con la estatura a lo cual la media de estatura en masculino es de:177. 74 y su desviación es de: 7.18
Del femenino su media es de:164.87 y su desviación es de :6.54
Se generan Tabla de distribución Estaturas MASCULINO y FEMENINO
Se toman los valores mínimos y máximos de estaturas, de esos valores se disminuye en diez a mínimo y aumenta en diez a máximo para contemplar mayor rango.
Calculamos probabilidades tanto de masculino como femenino pidiendo diferente datos y diferente información ,obteniendo resultados diferentes y siendo graficados.
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. Encuentre la probabilidad de que una bombilla se queme entre 778 y 834 horas. (Walpole, Myers, and Myers 2012).
\[\mu = 800\] \[ \sigma=40\]
\[P(778 \leq x \leq 834)\]
media <- 800
desv.stadandar <- 40
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 %"
Dado que la probabilidad de el área bajo la curva de una distribución normal es del 100% y solicitan la probabilidad en el intervalo entre 778 y 834, entonces se resta la probabilidad de 834 menos la probabilidad de 778 para encontrar el área bajo la curva de este intervalo de esa variable aleatoria. En la gráfica el color rosa es el área bajo la curva del intérvalo.
La probabilidad de que un foco se funda en un rango entre 778 horas y 834 horas es de 51.1178 %
Los sueldos mensuales en una empresa siguen una distribución normal con media de 1200 soles, y desviación estándar de 200 soles.
¿Qué porcentaje de trabajadores ganan entre 1000 y 1550 soles?(matemovil?).
\[\mu = 1200\] \[ \sigma=200\]
\[1000 \leq x \leq 1550\]
media <- 1200
desv.stadandar <- 200
plotDist("norm", mean = media, sd = desv.stadandar, groups = x >= 1000 & x <= 1550, type = "h", xlab = "Ganancias de trabajadores en soles", 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 %"
La probabilidad de que una persona gane entre 1000 y 1550 soles es de:“, 80.1286,”%" que es el porcentaje de trabajadores que ganan en ese intérvalo.
En una distribución normal \(N ( \mu=5, \sigma=2 )\) calcula las siguientes probabilidades:
Inicializar valores de media y desviación [anónimo]
media <- 5
desv <- 2
plotDist("norm", mean = media, sd = desv, groups = x <= 3.25, type = "h", xlab = "Contexto indistinto", ylab = "Densidad" )
x = 3.25
pnorm(q = x, mean = media, sd= desv)
## [1] 0.190787
plotDist("norm", mean = media, sd = desv, groups = x <= 4.5, type = "h", xlab = "Contexto indistinto", ylab = "Densidad" )
x <- 4.5
pnorm(q = x, mean = media, sd= desv, lower.tail = FALSE)
## [1] 0.5987063
plotDist("norm", mean = media, sd = desv, groups = x <= 7.2, type = "h", xlab = "Contexto indistinto", ylab = "Densidad" )
x <- 7.2
pnorm(q = x, mean = media, sd= desv)
## [1] 0.8643339
plotDist("norm", mean = media, sd = desv, groups = x >= 3 & x<= 6 , type = "h", xlab = "Contexto indistinto", ylab = "Densidad" )
x1 <- 6
x2 <- 3
pnorm(q = x1, mean = media, sd = desv) - pnorm(q = x2, mean = media, sd = desv)
## [1] 0.5328072
Primero inicializamos valores de media y desviación
Visualizando la desviación ( X ≤ 3.25) ,que vendría siendo: 0.190
La densidad de P [ X > 4.5 ] vendrá siendo de: 0.598
La densidad de P [ X > 7.2] vendrá siendo de: 0.864
La densidad de P [ 3 < X ≤ 6] vendrá siendo de: 0.532 ,haciendo la visualización en cada una de ellas, por medio de gráficas.
Es difícil etiquetar la carne empaquetada con su peso correcto debido a los efectos de pérdida de líquido (definido como porcentaje del peso original de la carne). Supongamos que la pérdida de líquido en un paquete de pechuga de pollo se distribuye como normal con media \(4 %\) y desviación típica \(1 %\). (uc3m?).
media <- 0.04
desv <- 0.01
¿Cuál es la probabilidad de que de que esté entre 3 y 5 porciento.
plotDist("norm", mean = media, sd = desv, groups = x >= 0.03 & x <= 0.05, type = "h", xlab = "Carne empaquetada", ylab = "Densidad" )
\(P(3≤x≤5)\)
pnorm(q = 0.05, mean = media, sd = desv) - pnorm(q = 0.03, mean = media, sd = desv)
## [1] 0.6826895
Logramos 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 el calcular probabilidades.
Para cada uno realizamos distribuciones de probabilidad a partir de los valores iniciales, logramos visualizar las gráficas de densidad ,calculando las probabilidades.
Dimos a conocer tanto la media como la desviación de masculino y femenino, mostramos diferente resultados cada uno con sus gráficas e histogramas para dar a entender mejor el caso.
Walpole, Ronald E., Raymond H. Myers, and Sharon L. Myers. 2012. Probabilidad y Estadística Para Ingeniería y Ciencias. Novena Edición. México: Pearson.