Las variables siguen una distribución normal:
Altura en centímetros.
Peso en kilogramos.
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 ...
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
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
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()
qqnorm(altura_personas)
qqline(altura_personas, col = 2)
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
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
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()
qqnorm(peso_personas)
qqline(peso_personas, col = 2)
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:
Ambas variables deben ser cuantitativas (intervalo o razón).
No es apropiado para variables categóricas u ordinales.
Las dos variables deben seguir una distribución normal (o aproximadamente normal): Se puede verificar mediante histogramas, Q-Q plots, o pruebas de normalidad como Shapiro-Wilk o Kolmogorov-Smirnov.
Homocedasticidad:La variabilidad de una variable debe ser constante a lo largo de los valores de la otra variable.
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'
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.