Prueba de Hipótesis - Paramétrica

Las variables siguen una distribución normal:

Sys.setlocale("LC_ALL", "Spanish_Spain.UTF-8")
## [1] "LC_COLLATE=Spanish_Spain.utf8;LC_CTYPE=Spanish_Spain.utf8;LC_MONETARY=Spanish_Spain.utf8;LC_NUMERIC=C;LC_TIME=Spanish_Spain.utf8"
options(encoding = "UTF-8")
library(ggplot2)
library(ggpubr)
## Warning: package 'ggpubr' was built under R version 4.4.2
library(openxlsx)
## Warning: package 'openxlsx' was built under R version 4.4.2
base_datos2 <- read.xlsx("alturapeso.xlsx", sheet = 1)
base_datos2 <- as.data.frame(unclass(base_datos2),
                            stringsAsFactors = TRUE)

str(base_datos2)
## 'data.frame':    250 obs. of  2 variables:
##  $ Altura_cm: num  175 169 176 185 168 ...
##  $ Peso_kg  : num  51.1 83.8 101.8 85.5 47.2 ...

Parámetros - Altura

altura_personas <- base_datos2$Altura_cm[1:250]
altura_personas
##   [1] 174.9671 168.6174 176.4769 185.2303 167.6585 167.6586 185.7921 177.6743
##   [9] 165.3053 175.4256 165.3658 165.3427 172.4196 150.8672 152.7508 164.3771
##  [17] 159.8717 173.1425 160.9198 155.8770 184.6565 167.7422 170.6753 155.7525
##  [25] 164.5562 171.1092 158.4901 173.7570 163.9936 167.0831 163.9829 188.5228
##  [33] 169.8650 159.4229 178.2254 157.7916 172.0886 150.4033 156.7181 171.9686
##  [41] 177.3847 171.7137 168.8435 166.9890 155.2148 162.8016 165.3936 180.5712
##  [49] 173.4362 152.3696 173.2408 166.1492 163.2308 176.1168 180.3100 179.3128
##  [57] 161.6078 166.9079 173.3126 179.7555 165.2083 168.1434 158.9367 158.0379
##  [65] 178.1253 183.5624 169.2799 180.0353 173.6164 163.5488 173.6140 185.3804
##  [73] 169.6417 185.6464 143.8025 178.2190 170.8705 167.0099 170.9176 150.1243
##  [81] 167.8033 173.5711 184.7789 164.8173 161.9151 164.9824 179.1540 173.2875
##  [89] 164.7024 175.1327 170.9708 179.6864 162.9795 166.7234 166.0789 155.3649
##  [97] 172.9612 172.6106 170.0511 167.6541 155.8463 165.7935 166.5729 161.9772
## [105] 168.3871 174.0405 188.8619 171.7458 172.5755 169.2555 150.8123 169.7349
## [113] 170.6023 194.6324 168.0764 173.0155 169.6529 158.3132 181.4282 177.5193
## [121] 177.9103 160.9061 184.0279 155.9815 175.8686 191.9046 160.0946 164.3370
## [129] 170.9965 164.9652 154.4934 170.6856 159.3770 174.7359 160.8058 185.4993
## [137] 162.1675 166.7794 178.1352 157.6914 172.2746 183.0714 153.9252 171.8463
## [145] 172.5988 177.8182 157.6305 156.7954 175.2194 172.9698 172.5049 173.4645
## [153] 163.1998 172.3225 172.9307 162.8565 188.6577 174.7383 158.0870 176.5655
## [161] 160.2532 177.8708 181.5860 161.7932 179.6338 174.1278 178.2206 188.9679
## [169] 167.5461 162.4626 161.1049 161.8419 169.2290 173.4115 172.7669 178.2718
## [177] 170.1300 184.5353 167.3534 197.2017 176.2567 161.4284 159.2911 174.8247
## [185] 167.7654 177.1400 174.7324 169.2717 161.5321 154.8515 165.5349 178.5640
## [193] 172.1409 157.5426 171.7318 173.8532 161.1614 171.5373 170.5821 158.5703
## [201] 173.5779 175.6078 180.8305 180.5380 156.2233 160.6217 175.1504 175.1379
## [209] 175.1505 208.5273 175.7089 181.3557 179.5400 176.5139 166.8473 177.5897
## [217] 162.2717 167.6318 165.1464 170.8187 193.1466 151.3273 176.8626 153.8728
## [225] 165.2807 180.8895 170.6428 159.2226 162.8470 176.7960 162.6963 172.1646
## [233] 170.4557 163.4840 191.4394 176.3392 149.7486 171.8645 163.3821 178.5243
## [241] 162.0748 168.8526 175.0499 178.6576 157.9970 166.6550 165.2505 163.4667
## [249] 187.6545 174.0498
media_altura_personas <- mean(altura_personas)
media_altura_personas
## [1] 169.9758
mediana_altura_personas <- median(altura_personas)
mediana_altura_personas
## [1] 170.5922
varianza_altura_personas <- var(altura_personas)
varianza_altura_personas
## [1] 93.32597
des_estandar_altura_personas <- sd(altura_personas)
des_estandar_altura_personas
## [1] 9.660537

Prueba de Normalidad - Altura

ks.test(altura_personas, "pnorm", mean = media_altura_personas, 
        sd = des_estandar_altura_personas)
## 
##  Asymptotic one-sample Kolmogorov-Smirnov test
## 
## data:  altura_personas
## D = 0.03641, p-value = 0.8947
## alternative hypothesis: two-sided

Histograma de Densidad - Altura

df <- data.frame(altura_personas)

ggplot(df, aes(x = altura_personas)) +
  geom_histogram(aes(y = after_stat(density)), 
                 binwidth = 1, 
                 fill = "lightblue", 
                 color = "black") +
  stat_function(fun = dnorm, 
                args = list(mean = media_altura_personas, 
                            sd = des_estandar_altura_personas),
                color = "red", 
                linewidth = 1.2) +
  labs(title = "Altura con Campana de Gauss",
       x = "Altura",
       y = "Densidad") +
  theme_minimal()

Q-Q Plot - Altura

qqnorm(altura_personas)
qqline(altura_personas, col = 2)

Parámetros - Peso

peso_personas <- base_datos2$Peso_kg[1:250]
peso_personas
##   [1]  51.08674  83.76793 101.83234  85.48698  47.20945  62.73649  89.00367
##   [8]  59.38496  76.65729  81.61951  56.09604  69.10712  21.38099  54.63419
##  [15]  66.21148  51.28325  94.48617  48.54788  63.39933  71.96111  91.61910
##  [22]  48.46207  87.44746  70.15350  55.27737  76.93155  72.98590  60.99675
##  [29]  71.04703  64.22030  71.70276  79.93196  93.79025  51.43277 101.99550
##  [36]  40.71868  67.72322  78.82476  74.21488  60.65951  66.87817  62.60499
##  [43]  61.15953  82.74403  75.35523  59.60636  83.49400  74.60949  82.19293
##  [50]  79.44443  57.56507  61.59728  81.20940  79.15555  69.68648  71.75991
##  [57]  89.16497  61.12643  78.20646  66.96711  66.73478  86.48165  82.38125
##  [64]  82.20264  89.58218  70.31506  80.22929  65.34600  74.86250  68.04785
##  [71]  71.45494  78.92736  57.72669 101.38581  54.90974  51.78717  87.37166
##  [78]  81.87494  79.36180  79.42518  69.81630  56.54118  71.13707  59.84257
##  [85]  84.62680  67.79414  57.61754  65.17921  76.19397  61.54413  57.66669
##  [92]  73.65531  73.67450  62.39585  62.93443  73.48075  48.27873  48.88804
##  [99]  59.22334  66.79829  74.66361  92.13034  82.86489  67.60092  69.71476
## [106]  54.96206  69.72230  65.67012  74.84078  57.59154  77.79020  92.99108
## [113]  68.36860  76.02568  80.35216  63.98169  73.36139  70.18889  71.46514
## [120]  58.40485  70.36765  77.46997  91.76715  84.38906 102.29774  58.48979
## [127]  83.08481  72.75013 102.84704  57.87553  57.40417  61.00911  38.14156
## [134]  62.11367  58.61301  72.25591  75.12634  98.14256  84.25636  61.34645
## [141]  56.52378  77.37879  50.19650  97.47188  87.69160  62.96237  44.30298
## [148]  90.30809  68.28190  88.56724  46.08359  61.00937  70.07866  70.70471
## [155]  63.24902  79.34275  53.98569  67.86431  71.80443  77.71658  80.67422
## [162]  53.13037  46.98829  89.16515  74.98471  58.77270  93.26728  71.73512
## [169]  87.68946  71.01278 100.91122  96.33011  66.26554  84.57356  79.68064
## [176]  90.52947  55.52615  80.29077  85.87637  43.61891  52.25112  39.41152
## [183]  65.95890  80.76313  92.53536  71.11142  94.42923  49.29848  44.44926
## [190]  69.16678  75.76098  69.50958  38.98837  68.66320  50.43296  80.04509
## [197]  75.49897  55.90180  62.29200  54.11180  69.05981  84.32713  55.21411
## [204]  77.56070  62.04614  58.10691  68.39454  54.47137  61.69526  52.03183
## [211]  99.47088  70.52895  59.50412  73.20970  68.31508  66.68546  79.21250
## [218]  81.36262  62.04248  61.36273  65.87422  35.47118  47.27213  90.50311
## [225]  94.67452  66.26446  78.64835  74.66875 116.18321  86.79362  68.08124
## [232]  55.66689  45.90331  73.05195  58.65474  48.66619  60.30141  53.77678
## [239]  95.30712  83.22460  69.88041  92.19916  71.16052  57.08074  92.84686
## [246]  78.08365  54.44131  67.14492  56.86573  49.25800
media_peso_personas <- mean(peso_personas)
media_peso_personas
## [1] 70.24148
mediana_peso_personas <- median(peso_personas)
mediana_peso_personas
## [1] 69.97953
varianza_peso_personas <- var(peso_personas)
varianza_peso_personas
## [1] 224.1339
des_estandar_peso_personas <- sd(peso_personas)
des_estandar_peso_personas
## [1] 14.9711

Prueba de Normalidad - Peso

ks.test(peso_personas, "pnorm", mean = media_peso_personas, sd = des_estandar_peso_personas)
## 
##  Asymptotic one-sample Kolmogorov-Smirnov test
## 
## data:  peso_personas
## D = 0.034591, p-value = 0.9259
## alternative hypothesis: two-sided

Histograma de Densidad - Peso

df <- data.frame(peso_personas)

ggplot(df, aes(x = peso_personas)) +
  geom_histogram(aes(y = after_stat(density)), 
                 binwidth = 1, 
                 fill = "lightblue", 
                 color = "black") +
  stat_function(fun = dnorm, 
                args = list(mean = media_peso_personas, 
                            sd = des_estandar_peso_personas),
                color = "red", 
                linewidth = 1.2) +
  labs(title = "Peso con Campana de Gauss",
       x = "Peso",
       y = "Densidad") +
  theme_minimal()

Q-Q Plot - Peso

qqnorm(peso_personas)
qqline(peso_personas, col = 2)

Prueba de Correlación de Pearson:

Se utiliza para evaluar la fuerza y dirección de la relación lineal entre dos variables continuas. La Correlación de Pearson (r) varía entre -1 y 1, donde -1 indica una relación negativa perfecta, 1 indica una relación positiva perfecta y 0 indica ninguna correlación.

Nos permite evaluar la relación lineal entre dos variables cuantitativas.

Condiciones:

resultado_correlacion <- cor.test(altura_personas, peso_personas, method = "pearson")
resultado_correlacion
## 
##  Pearson's product-moment correlation
## 
## data:  altura_personas and peso_personas
## t = -0.27069, df = 248, p-value = 0.7869
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  -0.1409529  0.1071090
## sample estimates:
##         cor 
## -0.01718643
correlacion_1 <- data.frame(x = altura_personas, y = peso_personas)

ggplot(correlacion_1, aes(x = x, y = y)) +
  geom_point(color = "#0349c3", size = 3, alpha = 0.6) +  # Puntos
  stat_cor(method = "pearson", label.x = 190, label.y = 110) +
  geom_smooth(method = "lm", color = "#e11703", se = FALSE) +  # Línea de regresión
  labs(title = "Relación entre la altura y el peso de las personas", 
       x = "Altura (cm)", 
       y = "Peso (kg)") +
  theme_minimal() +
  theme(plot.title = element_text(hjust = 0.5))
## `geom_smooth()` using formula = 'y ~ x'

Interpretación:

El coeficiente calculado es r = − 0,0172. Esto indica que hay una correlación negativa extremadamente débil entre la altura y el peso de las personas.

Hipótesis nula (Ho): La correlación entre altura y peso en la población es igual a 0 (r = 0). Hipótesis alternativa (Ha): La correlación entre altura y peso en la población es diferente de 0 (r ≠ 0).

El p valor fue de 0,7869. Por lo tanto, no se rechaza la hipótesis nula y nos sugiere que no hay evidencia estadística suficiente para afirmar que existe una correlación significativa entre altura y peso.

El intervalo de confianza del 95% para el coeficiente de correlación (− 0,1409, - 0.1071). Dado que incluye el valor 0, nos refuerza la conclusión de que no existe una correlación significativa.