Ingeniería Ambiental
#Cargar datos
setwd("C:/Users/KEVIN/OneDrive - Universidad Central del Ecuador/Escritorio/kevin/Estadistica/mundial/Rstudio")
datos <- read.csv("water_pollution_disease.csv",header = TRUE,sep = ",",dec = ".")
#Extraccion variable Cuantitativa Continua
acceso_agua <- datos$Access.to.Clean.Water....of.Population.
# Tabla de distribución de frecuencia
# Manualmente
min <- min(acceso_agua)
max <- max(acceso_agua)
R <- max-min
k <- floor(1+3.33*log10(length(acceso_agua)))
A <- R/k
lim_inf <- seq(from=min,to=max-A,by=A)
lim_sup <- seq(from=min+A,to=max,by=A)
MC <- round((lim_inf+lim_sup)/2,2)
ni <- c()
for (i in 1:k) {
if (i < k) {
ni[i] <- length(subset(acceso_agua, acceso_agua >= lim_inf[i] & acceso_agua < lim_sup[i]))
} else {
ni[i] <- length(subset(acceso_agua, acceso_agua >= lim_inf[i] & acceso_agua <= lim_sup[i]))
}
}
sum(ni)
## [1] 3000
hi <- ni/sum(ni)*100
sum(hi)
## [1] 100
Ni_asc <- cumsum(ni)
Hi_asc <- cumsum(hi)
Ni_desc <- rev(cumsum(rev(ni)))
Hi_desc <- rev(cumsum(rev(hi)))
TDF_acceso_agua <- data.frame(round(lim_inf,2),
round(lim_sup,2),
MC,ni,
round(hi,2),
Ni_asc,
Ni_desc,
round(Hi_asc,2),
round(Hi_desc,2))
colnames(TDF_acceso_agua) <- c("Lim inf","Lim sup","MC","ni","hi(%)",
"Ni asc","Ni desc","Hi asc(%)","Hi desc(%)")
# crear de fila de totales
totales <- c( lim_inf= "TOTAL",
lim_sup= "-",
MC= "-",
ni= sum(ni),
hi= sum(hi),
Ni_asc= "-",
Ni_des= "-",
Hi_asc= "-",
Hi_des= "-")
TDF_acceso_agua_total <- rbind(TDF_acceso_agua,totales)
# Tabla mas estetica
library(knitr)
## Warning: package 'knitr' was built under R version 4.4.2
library(kableExtra)
## Warning: package 'kableExtra' was built under R version 4.4.2
kable(TDF_acceso_agua_total, align = 'c',
caption = "Tabla de Distribución de Frecuencias de la acceso al agua
potable (% de la Población) de los países del estudio") %>%
kable_styling(full_width = FALSE, position = "center",
bootstrap_options = c("striped", "hover", "condensed"))
Tabla de Distribución de Frecuencias de la acceso al agua potable (% de
la Población) de los países del estudio
|
Lim inf
|
Lim sup
|
MC
|
ni
|
hi(%)
|
Ni asc
|
Ni desc
|
Hi asc(%)
|
Hi desc(%)
|
|
30.01
|
35.84
|
32.93
|
260
|
8.67
|
260
|
3000
|
8.67
|
100
|
|
35.84
|
41.67
|
38.76
|
261
|
8.7
|
521
|
2740
|
17.37
|
91.33
|
|
41.67
|
47.51
|
44.59
|
245
|
8.17
|
766
|
2479
|
25.53
|
82.63
|
|
47.5
|
53.34
|
50.42
|
262
|
8.73
|
1028
|
2234
|
34.27
|
74.47
|
|
53.34
|
59.17
|
56.25
|
266
|
8.87
|
1294
|
1972
|
43.13
|
65.73
|
|
59.17
|
65
|
62.08
|
212
|
7.07
|
1506
|
1706
|
50.2
|
56.87
|
|
65
|
70.83
|
67.92
|
259
|
8.63
|
1765
|
1494
|
58.83
|
49.8
|
|
70.83
|
76.66
|
73.75
|
241
|
8.03
|
2006
|
1235
|
66.87
|
41.17
|
|
76.66
|
82.5
|
79.58
|
253
|
8.43
|
2259
|
994
|
75.3
|
33.13
|
|
82.49
|
88.33
|
85.41
|
237
|
7.9
|
2496
|
741
|
83.2
|
24.7
|
|
88.33
|
94.16
|
91.24
|
272
|
9.07
|
2768
|
504
|
92.27
|
16.8
|
|
94.16
|
99.99
|
97.07
|
232
|
7.73
|
3000
|
232
|
100
|
7.73
|
|
TOTAL
|
|
|
3000
|
100
|
|
|
|
|
# Simplificación con el histograma
Hist_acceso_agua <- hist(acceso_agua,breaks = 8,plot = F)
k <- length(Hist_acceso_agua$breaks)
Li <- Hist_acceso_agua$breaks[1:(length(Hist_acceso_agua$breaks) - 1)]
Ls <- Hist_acceso_agua$breaks[2:length(Hist_acceso_agua$breaks)]
ni <- Hist_acceso_agua$counts
sum(ni)
## [1] 3000
MC <- Hist_acceso_agua$mids
hi <- (ni/sum(ni))
sum(hi)
## [1] 1
Ni_asc <- cumsum(ni)
Hi_asc <- cumsum(hi)
Ni_desc <- rev(cumsum(rev(ni)))
Hi_desc <- rev(cumsum(rev(hi)))
TDF_acceso_agua <- data.frame(Li = round(Li, 2),
Ls = round(Ls, 2),
MC = round(MC, 2),
ni = ni,
hi = round(hi * 100, 2),
Ni_asc = Ni_asc,
Ni_desc = Ni_desc,
Hi_asc = round(Hi_asc * 100, 2),
Hi_desc = round(Hi_desc * 100, 2))
colnames(TDF_acceso_agua) <- c("Lim inf","Lim sup","MC","ni","hi(%)",
"Ni asc","Ni desc","Hi asc(%)","Hi desc(%)")
# crear de fila de totales
totales <- c( lim_inf= "TOTAL",
lim_sup= "-",
MC= "-",
ni= sum(ni),
hi= sum(hi*100),
Ni_asc= "-",
Ni_des= "-",
Hi_asc= "-",
Hi_des= "-")
TDF_acceso_agua_total <- rbind(TDF_acceso_agua,totales)
kable(TDF_acceso_agua_total, align = 'c',
caption = "Tabla de Distribución de Frecuencias de la acceso al
agua potable (% de la Población) de los países del estudio") %>%
kable_styling(full_width = FALSE, position = "center",
bootstrap_options = c("striped", "hover", "condensed"))
Tabla de Distribución de Frecuencias de la acceso al agua potable (% de
la Población) de los países del estudio
|
Lim inf
|
Lim sup
|
MC
|
ni
|
hi(%)
|
Ni asc
|
Ni desc
|
Hi asc(%)
|
Hi desc(%)
|
|
30
|
40
|
35
|
455
|
15.17
|
455
|
3000
|
15.17
|
100
|
|
40
|
50
|
45
|
412
|
13.73
|
867
|
2545
|
28.9
|
84.83
|
|
50
|
60
|
55
|
466
|
15.53
|
1333
|
2133
|
44.43
|
71.1
|
|
60
|
70
|
65
|
404
|
13.47
|
1737
|
1667
|
57.9
|
55.57
|
|
70
|
80
|
75
|
418
|
13.93
|
2155
|
1263
|
71.83
|
42.1
|
|
80
|
90
|
85
|
431
|
14.37
|
2586
|
845
|
86.2
|
28.17
|
|
90
|
100
|
95
|
414
|
13.8
|
3000
|
414
|
100
|
13.8
|
|
TOTAL
|
|
|
3000
|
100
|
|
|
|
|
# GRAFICAS
# Histograma
hist(acceso_agua, breaks = 9,
main = "Gráfica N°1: Distribución del acceso al agua
potable(% de la Población) en los países del estudio",
xlab = "Acceso al agua potable (% de la Población)",
ylab = "Cantidad",
ylim = c(0, 500),
col = "purple",
cex.main = 0.9,
cex.lab = 1,
cex.axis = 0.9,
xaxt = "n")
axis(1, at = Hist_acceso_agua$breaks,
labels = Hist_acceso_agua$breaks, las = 1,
cex.axis = 0.9)

# Global
hist(acceso_agua, breaks = 9,
main = "Gráfica N°2: Distribución del acceso al agua potable
(% de la Población) en los países del estudio de contaminación ",
xlab = "Acceso al agua potable (% de la Población)",
ylab = "Cantidad",
ylim = c(0, length(acceso_agua)),
col = "purple",
cex.main = 0.9,
cex.lab = 1,
cex.axis = 0.9,
xaxt = "n")
axis(1, at = Hist_acceso_agua$breaks,
labels = Hist_acceso_agua$breaks, las = 1,
cex.axis = 0.9)

barplot(TDF_acceso_agua$`hi(%)`,
space=0,
col = "skyblue",
main ="Gráfica N°3: Distribución porcentual del acceso al agua potable
(% de la Población)en los países del estudio de contaminación del agua ",
xlab="Acceso al agua potable (% de la Población)",
ylab="Porcentaje (%)",
names.arg= TDF_acceso_agua$MC,
ylim = c(0,100),
cex.axis = 0.9,
cex.main = 0.9)

# Local
hist(acceso_agua, breaks = 9,
main = "Gráfica N°4: Distribución del acceso al agua potable
(% de la Población) en los países del estudio de contaminación del agua",
xlab = "Acceso al agua potable (% de la Población)",
ylab = "Cantidad",
ylim = c(0,400),
col = "purple",
cex.main = 0.9,
cex.lab = 1,
cex.axis = 0.9,
xaxt = "n")
axis(1, at = Hist_acceso_agua$breaks,
labels = Hist_acceso_agua$breaks, las = 1,
cex.axis = 0.9)

barplot(TDF_acceso_agua$`hi(%)`,space=0,
col = "lightblue",
main ="Gráfica N°5: Distribución porcentual del acceso al agua potable
(% de la Población) en los países del estudio de contaminación del agua ",
xlab="Acceso al agua potable (% de la Población)",
ylab="Porcentaje (%)",
ylim = c(0,15),
names.arg = TDF_acceso_agua$MC,
cex.axis = 0.9,
cex.main = 0.9)

# Diagrama de Ojiva Ascendente y Descendente
plot(Ls,Ni_asc,
main = "Gráfica N°6: Ojivas ascendente y descendente de acceso al agua
potable (% de la Población) en los países del estudio",
xlab = "Acceso al agua potable (% de la Población)",
ylab = "Cantidad",
xlim = c(0,100),
col = "orange",
cex.axis=0.9,
cex.main = 0.9,
type = "o",
lwd = 3,
las=1,
xaxt="n")
lines(Li ,Ni_desc,
col = "green",
type = "o",
lwd = 3)
axis(1, at = seq(0, 100, by = 10))

# Diagrama de Ojiva Ascendente y Descendente Porcentual
plot(Ls, Hi_asc * 100,
main = "Gráfica N°7: Ojivas ascendente y descendente porcentual del acceso
al agua potable (% de la Población) en los países del estudio ",
xlab = "Acceso al agua potable (% de la Población)",
ylab = "Porcentaje (%)",
xlim = c(0,100),
col = "red",
type = "o",
lwd = 2,
cex.axis = 0.9,
cex.main = 0.9,
xaxt="n")
lines(Li, Hi_desc * 100,
col = "blue",
type = "o",
lwd = 3)
axis(1, at = seq(0,100,by=10))

# Diagrama de Caja
boxplot(acceso_agua,
horizontal = TRUE,
main = "Gráfica N°4: Distribución del Acceso al Agua
Potable (% de la Población) en los países del estudio",
xlab = "Acceso al agua potable (% de la Población)",
col = "purple",
outline = TRUE,
pch = 1,
cex.axis = 0.9,
cex.main = 0.9)

# INDICADORES ESTADISTICOS
# Indicadores de Tendencia Central
# Media aritmética
media <- round(mean(acceso_agua), 2)
media
## [1] 64.61
# Moda
max_frecuencia <- max(TDF_acceso_agua$ni)
moda <- TDF_acceso_agua$MC[TDF_acceso_agua$ni == max_frecuencia]
moda
## [1] 55
# Mediana
mediana <- median(acceso_agua)
mediana
## [1] 64.78
# INDICADORES DE DISPERSIÓN #
# Varianza
varianza <- var(acceso_agua)
varianza
## [1] 412.4336
# Desviación Estándar
sd <- sd(acceso_agua)
sd
## [1] 20.30846
# Coeficiente de Variación
cv <- round((sd / media) * 100, 2)
cv
## [1] 31.43
# INDICADORES DE FORMA #
# Asimetría
library(e1071)
## Warning: package 'e1071' was built under R version 4.4.3
asimetria <- skewness(acceso_agua, type = 2)
asimetria
## [1] 0.01772978
#Curtosis
curtosis <- kurtosis(acceso_agua)
curtosis
## [1] -1.217223
tabla_indicadores <- data.frame("Variable" =c("Acceso al agua potable(% de la Población)"),
"Rango" = c("[30.01 ;99.99]"),
"X" = c(media),
"Me" = c(round(mediana,2)),
"Mo" = c("No tiene"),
"V" = c(round(varianza,2)),
"Sd" = c(round(sd,2)),
"Cv" = c(cv),
"As" = c(round(asimetria,4)),
"K" = c(round(curtosis,2)),
"Valores Atipicos" = "No hay presencia de valores atípicos")
library(knitr)
kable(tabla_indicadores, align = 'c', caption = "Conclusiones de la variable
acceso al agua potable (% de la Población) de los países del estudio de contaminación del agua")
Conclusiones de la variable acceso al agua potable (% de la
Población) de los países del estudio de contaminación del agua
| Acceso al agua potable(% de la Población) |
[30.01 ;99.99] |
64.61 |
64.78 |
No tiene |
412.43 |
20.31 |
31.43 |
0.0177 |
-1.22 |
No hay presencia de valores atípicos |