# UNIVERSIDAD CENTRAL DEL ECUADOR
# Facultad de Ingeniería en Geología, Minas, Petroleos y Ambiental
# Ingeniería Ambiental
# Autor:
# fecha:
#Cargar datos
setwd("C:/Users/LENOVO/OneDrive/Escritorio/ESTADISTICA")
datos <- read.csv("water_pollution_disease.csv")
#Extraccion variable Cuantitativa discreta
Colera <- datos$Cholera.Cases.per.100.000.people
TDF_colera <- table(Colera)
Tabla_colera <- as.data.frame(TDF_colera)
# Crear agrupación
library(dplyr)
##
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
Tabla_colera <- datos %>%
mutate(grupo = cut(Cholera.Cases.per.100.000.people,
breaks = seq(0, max(Cholera.Cases.per.100.000.people, na.rm = TRUE) + 5, by = 5),
right = FALSE)) %>%
group_by(grupo) %>%
summarise(ni = n(), .groups = "drop")
# Tabla de distribución de frecuencia
min <- min(Colera)
max <- max(Colera)
ni <- Tabla_colera$ni
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_colera <- data.frame(Tabla_colera$grupo, ni,round(hi,2),
Ni_asc,
Ni_desc,
round(Hi_asc,2),
round(Hi_desc,2))
colnames(TDF_colera) <- c("Colera","ni","hi(%)",
"Ni asc","Ni desc","Hi asc(%)","Hi desc(%)")
# crear de fila de totales
totales <- data.frame( Colera = "TOTAL",
ni= sum(ni),
hi= sum(hi),
Ni_asc= "-",
Ni_des= "-",
Hi_asc= "-",
Hi_des= "-")
colnames(totales) <- c("Colera","ni","hi(%)",
"Ni asc","Ni desc","Hi asc(%)","Hi desc(%)")
TDF_colera_total<- rbind(TDF_colera,totales)
# Tabla mas estetica
library(knitr)
library(kableExtra)
##
## Adjuntando el paquete: 'kableExtra'
## The following object is masked from 'package:dplyr':
##
## group_rows
kable(TDF_colera_total, align = 'c',
caption = "Tabla de Distribucion de Frecuencias de los casos de Cólera
(casos/100,000hab)") %>%
kable_styling(full_width = FALSE, position = "center",
bootstrap_options = c("striped", "hover", "condensed"))
Tabla de Distribucion de Frecuencias de los casos de Cólera
(casos/100,000hab)
|
Colera
|
ni
|
hi(%)
|
Ni asc
|
Ni desc
|
Hi asc(%)
|
Hi desc(%)
|
|
[0,5)
|
325
|
10.83
|
325
|
3000
|
10.83
|
100
|
|
[5,10)
|
285
|
9.50
|
610
|
2675
|
20.33
|
89.17
|
|
[10,15)
|
285
|
9.50
|
895
|
2390
|
29.83
|
79.67
|
|
[15,20)
|
295
|
9.83
|
1190
|
2105
|
39.67
|
70.17
|
|
[20,25)
|
319
|
10.63
|
1509
|
1810
|
50.3
|
60.33
|
|
[25,30)
|
307
|
10.23
|
1816
|
1491
|
60.53
|
49.7
|
|
[30,35)
|
311
|
10.37
|
2127
|
1184
|
70.9
|
39.47
|
|
[35,40)
|
303
|
10.10
|
2430
|
873
|
81
|
29.1
|
|
[40,45)
|
306
|
10.20
|
2736
|
570
|
91.2
|
19
|
|
[45,50)
|
264
|
8.80
|
3000
|
264
|
100
|
8.8
|
|
TOTAL
|
3000
|
100.00
|
|
|
|
|
# GRAFICAS
#Diagrama de barra local
barplot(TDF_colera$ni,
main = "Gráfica N°1:Distribución de los Casos de Cólera por cada 100.000
personas en relación con el estudio sobre la contaminación del agua",
xlab = "Casos de Cólera por 100. 0000 personas",
ylab = "Cantidad",
col = "pink",
las=2,
cex.names = 0.7,
names.arg=TDF_colera$Colera)

barplot(TDF_colera$`hi(%)`,
col = "skyblue",
main ="Gráfica N°2:Distribución porcentual de los Casos de Cólera por
cada 100.000 personas en relación con el estudio sobre la
contaminación del agua",
xlab = "Casos de Cólera por 100. 0000 personas",
ylab="Porcentaje (%)",
las=2,
cex.names = 0.7,
names.arg= TDF_colera$Colera,
ylim = c(0,12))

#Diagrama de barra Global
barplot(TDF_colera$ni,
main = "Gráfica N°3:Distribución de los Casos de Cólera por cada 100.000
personas en relación con el estudio sobre la contaminación del agua",
xlab = "Casos de Cólera por 100. 0000 personas",
ylab = "Cantidad",
ylim = c(0,3000),
col = "pink",
las=2,
cex.names = 0.7,
names.arg=TDF_colera$Colera)

barplot(TDF_colera$`hi(%)`,
col = "skyblue",
main ="Gráfica N°4:Distribución porcentual de los Casos de Cólera por
cada 100.000 personas en relación con el estudio sobre
la contaminación del agua",
xlab = "Casos de Cólera por 100. 0000 personas",
ylab="Porcentaje (%)",
las=2,
cex.names = 0.7,
names.arg= TDF_colera$Colera,
ylim = c(0,100))

# Diagrama de Ojiva Ascendente y Descendente
x_pos <- 1:length(TDF_colera$Colera)
plot(x_pos ,Ni_desc,
main = "Gráfica N°5: Ojiva Ascendente y Descendente de la Distribución de
los Casos de Cólera por cada 100.000 personas en relación con el
estudio sobre la contaminación del agua",
xlab = "Casos de Cólera por 100. 0000 personas",
ylab = "Cantidad",
col = "orange",
type = "p",
lwd = 3,
xaxt="n")
lines(x_pos,Ni_asc,
col = "green",
type = "p",
lwd = 3)
axis(side = 1, at = x_pos, labels = TDF_colera$Colera, las = 1, cex.axis = 0.9)

# Diagrama de Ojiva Ascendente y Descendente Porcentual
x_por <- 1:length(TDF_colera$`hi(%)`)
plot(x_pos, Hi_desc * 100,
main = "Gráfica N°6:Ojiva Ascendente y Descendente de la Distribución
porcentual de los Casos de Cólera por cada 100.000 personas
en relación con el estudio sobre la contaminación del agua ",
xlab = "Casos de Cólera por 100. 0000 personas",
ylab = "Porcentaje (%)",
col = "red",
type = "p",
lwd = 2,
xaxt="n")
lines(x_pos, Hi_asc * 100,
col = "blue",
type = "p",
lwd = 3)
axis(side = 1, at = x_pos, labels = TDF_colera$Colera, las = 1, cex.axis = 0.9)

# Diagrama de Caja
boxplot(Colera,
horizontal = TRUE,
main = "Gráfica N°7:Distribución de los Casos de Cólera por cada 100.000
personas en relación con el estudio sobre la contaminación del agua ",
xlab = "Casos de Cólera por 100. 0000 personas",
col = "purple",
outline = TRUE,
pch = 1)

# INDICADORES ESTADISTICOS
# Indicadores de Tendencia Central
# Media aritmética
media <- round(mean(Colera), 2)
media
## [1] 24.25
# Moda
max_frecuencia <- max(TDF_colera$ni)
moda <- TDF_colera$ni[TDF_colera$ni == max_frecuencia]
moda
## [1] 325
# Mediana
mediana <- median(Colera)
mediana
## [1] 24
# INDICADORES DE DISPERSIÓN #
# Varianza
varianza <- var(Colera)
varianza
## [1] 205.4231
# Desviación Estándar
sd <- sd(Colera)
sd
## [1] 14.33259
# Coeficiente de Variación
cv <- round((sd / media) * 100, 2)
cv
## [1] 59.1
# INDICADORES DE FORMA #
# Asimetría
library(e1071)
asimetria <- skewness(Colera, type = 2)
asimetria
## [1] -0.01077648
#Curtosis
curtosis <- kurtosis(Colera)
curtosis
## [1] -1.182368
tabla_indicadores <- data.frame("Variable" =c("Colera (Casos por 100.000 habitantes)"),
"Rango" = c("[0 ; 49]"),
"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 atípicos")
library(knitr)
kable(tabla_indicadores, align = 'c', caption = "Conclusiones de la variable
Colera (Casos por 100.000 habitantes)de los países del estudio de contaminación del agua")
Conclusiones de la variable Colera (Casos por 100.000
habitantes)de los países del estudio de contaminación del agua
| Colera (Casos por 100.000 habitantes) |
[0 ; 49] |
24.25 |
24 |
No hay moda |
205.42 |
14.33 |
59.1 |
-0.0108 |
-1.18 |
No hay presencia de valores atípicos |