#UNIVERSIDAD CENTRAL DEL ECUADOR
#Facultad de Ingeniería en Geología, Minas, Petroleos y Ambiental
#Ingeniería Ambiental
#Autor: Grupo 4
#fecha:
#Cargar datos
setwd("C:/Users/LENOVO/OneDrive/Escritorio/ESTADISTICA")
datos <- read.csv("water_pollution_disease.csv")
#extraccion variable cuantitativa continua
Concentracion_plomo <- datos$Lead.Concentration..µg.L.
#Tabla de distribución de frecuencia
#Manualmente
min <- min(Concentracion_plomo)
max <- max(Concentracion_plomo)
R <- max-min
K <- floor(1+3.33*log10(length(Concentracion_plomo)))
A <- R/K
lim_inf <- round(seq(from=min,to=max-A,by=A),2)
lim_sup <- round(seq(from=min+A,to=max,by=A),2)
MC <- (lim_inf+lim_sup)/2
ni <- c()
for (i in 1:K) {
if (i < K) {
ni[i] <- length(subset(Concentracion_plomo, Concentracion_plomo >= lim_inf[i] & Concentracion_plomo < lim_sup[i]))
} else {
ni[i] <- length(subset(Concentracion_plomo, Concentracion_plomo >= lim_inf[i] & Concentracion_plomo <= 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_Plomo <- data.frame(lim_inf,
lim_sup,
MC,ni,
round(hi,2),
Ni_asc,
Ni_desc,
round(Hi_asc,2),
round(Hi_desc,2))
colnames(TDF_Plomo) <- 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_Plomo_total <- rbind(TDF_Plomo, totales)
library(knitr)
library(kableExtra)
kable(TDF_Plomo_total, align = 'c',
caption = "Tabla de Distribución de frecuencias de concentración de Plomo (µg/L) en los países analizados") %>%
kable_styling(full_width = FALSE, position = "center",
bootstrap_options = c("striped", "hover", "condensed"))
Tabla de Distribución de frecuencias de concentración de Plomo (µg/L) en
los países analizados
|
Lim inf
|
Lim sup
|
MC
|
ni
|
hi(%)
|
Ni asc
|
Ni desc
|
Hi asc(%)
|
Hi desc(%)
|
|
0
|
1.67
|
0.835
|
268
|
8.93
|
268
|
3000
|
8.93
|
100
|
|
1.67
|
3.33
|
2.5
|
226
|
7.53
|
494
|
2732
|
16.47
|
91.07
|
|
3.33
|
5
|
4.165
|
240
|
8
|
734
|
2506
|
24.47
|
83.53
|
|
5
|
6.67
|
5.835
|
273
|
9.1
|
1007
|
2266
|
33.57
|
75.53
|
|
6.67
|
8.33
|
7.5
|
254
|
8.47
|
1261
|
1993
|
42.03
|
66.43
|
|
8.33
|
10
|
9.165
|
228
|
7.6
|
1489
|
1739
|
49.63
|
57.97
|
|
10
|
11.67
|
10.835
|
236
|
7.87
|
1725
|
1511
|
57.5
|
50.37
|
|
11.67
|
13.33
|
12.5
|
225
|
7.5
|
1950
|
1275
|
65
|
42.5
|
|
13.33
|
15
|
14.165
|
293
|
9.77
|
2243
|
1050
|
74.77
|
35
|
|
15
|
16.67
|
15.835
|
255
|
8.5
|
2498
|
757
|
83.27
|
25.23
|
|
16.67
|
18.33
|
17.5
|
242
|
8.07
|
2740
|
502
|
91.33
|
16.73
|
|
18.33
|
20
|
19.165
|
260
|
8.67
|
3000
|
260
|
100
|
8.67
|
|
TOTAL
|
|
|
3000
|
100
|
|
|
|
|
#Simplificación con el histograma
Hist_Plomo <- hist(Concentracion_plomo,breaks = 10,plot=F)
k <- length(Hist_Plomo$breaks)
Li <- Hist_Plomo$breaks[1:(length(Hist_Plomo$breaks)-1)]
Ls <- Hist_Plomo$breaks[2:length(Hist_Plomo$breaks)]
ni <- Hist_Plomo$counts
sum(ni)
## [1] 3000
MC <- Hist_Plomo$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_Plomo <- 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_Plomo) <- 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_Plomo_total <- rbind(TDF_Plomo, totales)
kable(TDF_Plomo_total, align = 'c',
caption = "Tabla de Distribución de frecuencias de concentración de Plomo (µg/L)
en los países analizados") %>%
kable_styling(full_width = FALSE, position = "center",
bootstrap_options = c("striped", "hover", "condensed"))
Tabla de Distribución de frecuencias de concentración de Plomo (µg/L) en
los países analizados
|
Lim inf
|
Lim sup
|
MC
|
ni
|
hi(%)
|
Ni asc
|
Ni desc
|
Hi asc(%)
|
Hi desc(%)
|
|
0
|
2
|
1
|
317
|
10.57
|
317
|
3000
|
10.57
|
100
|
|
2
|
4
|
3
|
280
|
9.33
|
597
|
2683
|
19.9
|
89.43
|
|
4
|
6
|
5
|
289
|
9.63
|
886
|
2403
|
29.53
|
80.1
|
|
6
|
8
|
7
|
331
|
11.03
|
1217
|
2114
|
40.57
|
70.47
|
|
8
|
10
|
9
|
272
|
9.07
|
1489
|
1783
|
49.63
|
59.43
|
|
10
|
12
|
11
|
293
|
9.77
|
1782
|
1511
|
59.4
|
50.37
|
|
12
|
14
|
13
|
282
|
9.4
|
2064
|
1218
|
68.8
|
40.6
|
|
14
|
16
|
15
|
331
|
11.03
|
2395
|
936
|
79.83
|
31.2
|
|
16
|
18
|
17
|
303
|
10.1
|
2698
|
605
|
89.93
|
20.17
|
|
18
|
20
|
19
|
302
|
10.07
|
3000
|
302
|
100
|
10.07
|
|
TOTAL
|
|
|
3000
|
100
|
|
|
|
|
# GRAFICAS
# Histograma
hist(Concentracion_plomo, breaks = 11,
main = "Gráfica N°1: Distribución de la Concentración de Plomo (µg/L)
presente en el estudio sobre contaminación del agua y enfermedades",
xlab = "Concentración de Plomo((µg/L)",
ylab = "Cantidad",
ylim = c(0, max(ni)),
col = "purple",
cex.main = 0.9,
cex.lab = 1,
cex.axis = 0.9,
xaxt = "n")
axis(1, at = Hist_Plomo$breaks,
labels = Hist_Plomo$breaks, las = 1,
cex.axis = 0.9)

# Global
hist(Concentracion_plomo, breaks = 11,
main = "Gráfica N°2:Distribución de la Concentración de Plomo (µg/L)
presente en el estudio sobre contaminación del agua y enfermedades",
xlab = "Concentración de Plomo (µg/L)",
ylab = "Cantidad",
ylim = c(0, length(Concentracion_plomo)),
col = "purple",
cex.main = 1,
cex.lab = 1,
cex.axis = 0.9,
xaxt = "n")
axis(1, at = Hist_Plomo$breaks,
labels = Hist_Plomo$breaks, las = 1,
cex.axis = 0.9)

barplot(TDF_Plomo[["hi(%)"]],
space=0,
col = "skyblue",
main ="Gráfica N°3:Distribución de la Concentración de Plomo (µg/L)
presente en el estudio sobre contaminación del agua",
xlab="Concentración de Plomo((µg/L)",
ylab="Porcentaje (%)",
names.arg= TDF_Plomo$MC,
ylim = c(0,100))

# Local
hist(Concentracion_plomo, breaks = 11,
main = "Gráfica N°4:Distribución de la Concentración de Plomo (µg/L)
presente en el estudio sobre contaminación del agua y enfermedades",
xlab = "Concentración de Plomo((µg/L))",
ylab = "Cantidad",
ylim = c(0,max(ni)),
col = "purple",
cex.main = 0.9,
cex.lab = 1,
cex.axis = 0.9,
xaxt = "n")
axis(1, at = Hist_Plomo$breaks,
labels = Hist_Plomo$breaks, las = 1,
cex.axis = 0.9)

barplot(TDF_Plomo$'hi(%)',space=0,
col = "lightblue",
main ="Gráfica N°5:Distribución de la Concentración de Plomo (µg/L)
presente en el estudio sobre contaminación del agua y enfermedades",
xlab="Concentración de Plomo(µg/L)",
ylab="Porcentaje (%)",
ylim = c(0,12),
cex.main = 0.9,
cex.lab = 1,
cex.axis = 0.9,
names.arg = TDF_Plomo$MC)

# Diagrama de Ojiva Ascendente y Descendente
plot(Li ,Ni_desc,
main = "Gráfica N°6:Ojiva ascendente y descendente de la distribución
local del nivel de concentración de plomo (µg/L)",
xlab = "Concentración de Plomo(µg/L)",
ylab = "Cantidad",
xlim = c(0,20),
col = "orange",
cex.axis=0.8,
type = "o",
lwd = 3,
las=1,
xaxt="n")
lines(Ls,Ni_asc,
col = "green",
type = "o",
lwd = 3)
axis(1, at = unique(round(c(Li, Ls), 2)))

# Diagrama de Ojiva Ascendente y Descendente Porcentual
plot(Li, Hi_desc * 100,
main = "Gráfica N°7:Ojiva ascendete y descendete de la distribución de la
Concentración de Plomo (µg/L) presente en el estudio sobre
contaminación del agua y enfermedades",
xlab = "Concentración de Plomo (µg/L)",
ylab = "Porcentaje (%)",
xlim = c(0,20),
col = "red",
type = "o",
lwd = 2,
xaxt="n")
lines(Ls, Hi_asc * 100,
col = "blue",
type = "o",
lwd = 3)
axis(1, at = unique(round(c(Li, Ls), 2)))

# Diagrama de Caja
boxplot(Concentracion_plomo,
horizontal = TRUE,
main = "Gráfica N°8:Distribución de la Concentración de Plomo (µg/L)
presente en el estudio sobre contaminación del agua",
xlab = "Concentración de Plomo((µg/L)",
col = "purple",
outline = TRUE,
pch = 1)

# INDICADORES ESTADISTICOS
# Indicadores de Tendencia Central
# Media aritmética
media <- round(mean(Concentracion_plomo), 2)
media
## [1] 10.05
# Moda
max_frecuencia <- max(TDF_Plomo$ni)
moda <- TDF_Plomo$MC[TDF_Plomo$ni == max_frecuencia]
moda
## [1] 7 15
# Mediana
mediana <- median(Concentracion_plomo)
mediana
## [1] 10.065
# INDICADORES DE DISPERSIÓN #
# Varianza
varianza <- var(Concentracion_plomo)
varianza
## [1] 33.61957
# Desviación Estándar
sd <- sd(Concentracion_plomo)
sd
## [1] 5.798238
# Coeficiente de Variación
cv <- round((sd / media) * 100, 2)
cv
## [1] 57.69
# INDICADORES DE FORMA #
# Coeficiente deAsimetría
library("e1071")
asimetria <- skewness(Concentracion_plomo, type = 2)
asimetria
## [1] -0.02021167
#Curtosis
curtosis <- kurtosis(Concentracion_plomo)
curtosis
## [1] -1.217488
tabla_indicadores <- data.frame("Variable" =c(" Concetración de Plomo (µg/L)"),
"Rango" = c("[ 0;20]"),
"X" = c(media),
"Me" = c(round(mediana,2)),
"Mo" = c("No hay moda"),
"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 atipicos")
library(knitr)
kable(tabla_indicadores, align = 'c', caption = "Conclusiones sobre la variable
de la concetración de Plomo en el agua")
Conclusiones sobre la variable de la concetración de Plomo en
el agua
| Concetración de Plomo (µg/L) |
[ 0;20] |
10.05 |
10.07 |
No hay moda |
33.62 |
5.8 |
57.69 |
-0.0202 |
-1.22 |
No hay presencia de valores atipicos |