2. TABLA DE DISTRIBUCION CON STURGES
acero <- as.numeric(datos$Impact.steel.production..pad.)
acero <- na.omit(acero)
acero <- acero[acero >= 0]
n <- length(acero)
#STURGES
k <- floor(1 + 3.322 * log10(n))
k
## [1] 14
#MINIMO
minimo <- min(acero)
minimo
## [1] 79121.28
#MAXIMO
maximo <- max(acero)
maximo
## [1] 310729.6
#RANGO
R <- maximo - minimo
R
## [1] 231608.3
#AMPLITUD
A <- R / k
A
## [1] 16543.45
Li_s <- round(seq(from = minimo, to = maximo - A, by = A), 2)
Ls_s <- round(seq(from = minimo + A, to = maximo, by = A), 2)
MC_s <- round((Li_s + Ls_s) / 2, 2)
ni_s <- numeric(length(Li_s))
for (i in 1:length(Li_s)) {
ni_s[i] <- sum(acero >= Li_s[i] & acero < Ls_s[i])
}
ni_s[length(Li_s)] <- sum(acero >= Li_s[length(Li_s)] & acero <= maximo)
TDF_Sturges <- data.frame(Li=Li_s, Ls=Ls_s, MC=MC_s, ni=ni_s, hi=round((ni_s/n)*100, 2))
TDF_Sturges_P <- rbind(TDF_Sturges, data.frame(Li="TOTAL", Ls="", MC="", ni=sum(ni_s), hi=100))
| Tabla Nº1. Tabla de distribucion de cantidad
de impacto de acero en pozos de gas natural en
Nuevo Mexico |
| Li |
Ls |
MC |
ni |
hi |
| 79121.28 |
95664.74 |
87393.01 |
26 |
0.21 |
| 95664.74 |
112208.19 |
103936.46 |
437 |
3.48 |
| 112208.19 |
128751.64 |
120479.92 |
1574 |
12.53 |
| 128751.64 |
145295.09 |
137023.36 |
2542 |
20.24 |
| 145295.09 |
161838.55 |
153566.82 |
3018 |
24.03 |
| 161838.55 |
178382 |
170110.28 |
2580 |
20.54 |
| 178382 |
194925.45 |
186653.72 |
1387 |
11.04 |
| 194925.45 |
211468.9 |
203197.17 |
613 |
4.88 |
| 211468.9 |
228012.36 |
219740.63 |
237 |
1.89 |
| 228012.36 |
244555.81 |
236284.08 |
103 |
0.82 |
| 244555.81 |
261099.26 |
252827.54 |
28 |
0.22 |
| 261099.26 |
277642.71 |
269370.98 |
10 |
0.08 |
| 277642.71 |
294186.17 |
285914.44 |
3 |
0.02 |
| 294186.17 |
310729.62 |
302457.9 |
3 |
0.02 |
| TOTAL |
|
|
12561 |
100.00 |
| Tabla 1 de 4 |
3. TABLA DE DISTRIBUCION AGRUPADA
Debido a que la Tabla conteniene valores con
decimales complejos, la vamos a simplificar
h_f <- hist(acero, plot = FALSE)
lis <- h_f$breaks[1:(length(h_f$breaks)-1)]
lss <- h_f$breaks[2:length(h_f$breaks)]
MC_f <- h_f$mids
ni_f <- h_f$counts
hi_f <- (ni_f / sum(ni_f)) * 100
Niasc <- cumsum(ni_f); Nidsc <- rev(cumsum(rev(ni_f)))
Hiasc <- round(cumsum(hi_f), 2); Hidsc <- round(rev(cumsum(rev(hi_f))), 2)
TDF_Simp <- data.frame(Li=lis, Ls=lss, MC=MC_f, ni=ni_f, hi=round(hi_f, 2),
Niasc, Nidsc, Hiasc, Hidsc)
TDF_Simp_P <- rbind(TDF_Simp, data.frame(Li="TOTAL", Ls=" ", MC=" ", ni=sum(ni_f), hi=100,Niasc=" ", Nidsc=" ", Hiasc=" ", Hidsc=" "))
| TABLA Nº2: Tabla de distribucion de cantidad
de impacto del acero en pozos de gas natural en
Nuevo Mexico |
| Li |
Ls |
MC |
ni |
hi |
Niasc |
Nidsc |
Hiasc |
Hidsc |
| 60000 |
80000 |
70000 |
1 |
0.01 |
1 |
12561 |
0.01 |
100 |
| 80000 |
100000 |
90000 |
68 |
0.54 |
69 |
12560 |
0.55 |
99.99 |
| 100000 |
120000 |
110000 |
997 |
7.94 |
1066 |
12492 |
8.49 |
99.45 |
| 120000 |
140000 |
130000 |
2636 |
20.99 |
3702 |
11495 |
29.47 |
91.51 |
| 140000 |
160000 |
150000 |
3572 |
28.44 |
7274 |
8859 |
57.91 |
70.53 |
| 160000 |
180000 |
170000 |
3089 |
24.59 |
10363 |
5287 |
82.5 |
42.09 |
| 180000 |
200000 |
190000 |
1442 |
11.48 |
11805 |
2198 |
93.98 |
17.5 |
| 200000 |
220000 |
210000 |
511 |
4.07 |
12316 |
756 |
98.05 |
6.02 |
| 220000 |
240000 |
230000 |
184 |
1.46 |
12500 |
245 |
99.51 |
1.95 |
| 240000 |
260000 |
250000 |
45 |
0.36 |
12545 |
61 |
99.87 |
0.49 |
| 260000 |
280000 |
270000 |
11 |
0.09 |
12556 |
16 |
99.96 |
0.13 |
| 280000 |
300000 |
290000 |
3 |
0.02 |
12559 |
5 |
99.98 |
0.04 |
| 300000 |
320000 |
310000 |
2 |
0.02 |
12561 |
2 |
100 |
0.02 |
| TOTAL |
|
|
12561 |
100.00 |
|
|
|
|
| Tabla 2 de 4 |
4. GRAFICAS DE DISTRIBUCION
par(oma = c(1, 1, 1, 1))
par(mfrow=c(1,1))
color_acero <- "#B0C4DE"
par(mar = c(6, 5, 4, 2) + 0.1)
#POLÍGONO DE FRECUENCIA
h_acero <- hist(acero, plot = FALSE)
limite_inferior_a <- h_acero$breaks[1]
limite_superior_a <- tail(h_acero$breaks, 1)
x_c <- c(limite_inferior_a, MC_f, limite_superior_a)
y_c <- c(0, ni_f, 0)
x_p <- MC_f
y_p <- hi_f
# Grafica 1: Histograma Frecuencia Absoluta (CON POLÍGONO CERRADO)
hist(acero, freq = TRUE, col = color_acero, border = "black",
main = "Grafica Nº1: Distribucion de cantidad de impacto del acero
en pozos de gas natural en Nuevo Mexico",
xlab = "Impacto del Acero", ylab = "Cantidad")
lines(x_c, y_c, type = "b", col = "red", pch = 19, lwd = 2)
box(which = "outer", col = "black")

# Grafica 3: Histograma Global
hist(acero, freq = TRUE, col = color_acero, border = "black", ylim = c(0, n),
main = "Grafica Nº2: Distribucion de cantidad de impacto
del acero en pozos de gas natural en Nuevo Mexico",
xlab = "Impacto del Acero", ylab = "Cantidad")
box(which = "outer", col = "black")

# Grafica 4: Frecuencia Relativa
h_rel <- hist(acero, plot = FALSE)
h_rel$counts <- (h_rel$counts / sum(h_rel$counts)) * 100
plot(h_rel, col = color_acero, border = "black",
main = "Grafica Nº3: Distribucion de cantidad en porcentaje de impacto
del acero en pozos de gas natural en Nuevo Mexico",
xlab = "Impacto del Acero", ylab = "Porcentaje (%)")
box(which = "outer", col = "black")

# Grafica 5: Frecuencia relativa global
plot(h_rel, col = color_acero, border = "black", ylim = c(0, 100),
main = "Grafica Nº4: Distribucion de cantidad de impacto de acero
en pozos de gas natural en Nuevo Mexico",
xlab = "Impacto del Acero", ylab = "Porcentaje (%)")
box(which = "outer", col = "black")

#Grafica 6:ojivas
plot(lss, Nidsc, type="b", col="blue", pch=19, bg="white", xlab="Impacto del Acero", ylab="Cant. Acumulada",
main="Gráfica Nº5: Ojivas combinadas de cantidad
del Impacto del Acero en pozos de gas natural en
Nuevo México")
lines(lis, Niasc, col="black", type="b", pch=19)
legend("right", legend=c("Descendente", "Ascendente"), col=c("blue", "black"), pch=c(19, 19), pt.bg="white", bty="n")
box(which = "outer", col = "black")

# Grafica 7: Ojivas
plot(lss, Hidsc, type="b", col="blue", pch=19, bg="white", ylim=c(0, 100),
main="Gráfica Nº6: Ojivas combinadas de cantidad en porcentaje
del Impacto del Acero en pozos de gas natural en
Nuevo México",
xlab="Impacto del Acero", ylab="Porcentaje Acumulado")
lines(lis, Hiasc, col="black", type="b", pch=19)
legend("right", legend=c("Descendente", "Ascendente"), col=c("blue", "black"),
pch=c(19, 19), pt.bg="white", bty="n")
box(which = "outer", col = "black")

# Grafica 8: Boxplot
boxplot(acero, horizontal = TRUE, col = "skyblue",
main = "Gráfica Nº7: Distribución de cantidad de Impacto de
Acero en pozos de gas natural en Nuevo México",
xlab = "Impacto del Acero")
box(which = "outer", col = "black")

summary(acero)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 79121 136521 154798 156013 173025 310730
# Grafica 9: Superposición de Boxplot sobre Histograma
hist(acero, prob = TRUE, col = color_acero, border = "black",
xlab = "Impacto del Acero", ylab = "Densidad",
main = "Grafica Nº8: Análisis de densidad y cuartiles del Impacto del Acero")
par(new = TRUE)
boxplot(acero, horizontal = TRUE, axes = FALSE,
col = rgb(0, 0.8, 1, alpha = 0.5))
box(which = "outer", col = "black")

5. INDICADORES ESTADISTICOS
TablaInd <- data.frame(Variable="Acero", min=min(acero), max=max(acero),
x=round(mean(acero),2), Me=median(acero),
sd=round(sd(acero),2), Cv=round(abs((sd(acero)/mean(acero))*100),2),
As=round(skewness(acero),2), K=round(kurtosis(acero),2))
# mediana
media_val <- mean(acero)
media_val
## [1] 156012.9
#desciacion estandar
desv_val <- sd(acero)
desv_val
## [1] 27225.15
#minimo
min_val <- min(acero)
min_val
## [1] 79121.28
#maximo
max_val <- max(acero)
max_val
## [1] 310729.6
#desviacion relativa
cv_analisis <- abs(desv_val / media_val) * 100
cv_analisis
## [1] 17.45058
tipo_datos <- if(cv_analisis > 30) "heterogeneos" else "homogeneos"
conteo_atipicos <- length(boxplot.stats(acero)$out)
# TABLA 3 CON GT
TablaInd %>%
gt() %>%
tab_header(title = md("Tabla Nº3: Indicadores estadísticos de la variable
impacto de acero en pozos de gas natural en Nuevo México")) %>%
tab_style(
style = list(cell_fill(color = "lightgray"), cell_text(weight = "bold")),
locations = cells_title(groups = "title")
) %>%
tab_options(
column_labels.font.weight = "bold"
) %>%
tab_source_note(
source_note = md("**Tabla 3 de 4**"))
| Tabla Nº3: Indicadores estadísticos de la variable
impacto de acero en pozos de gas natural en Nuevo México |
| Variable |
min |
max |
x |
Me |
sd |
Cv |
As |
K |
| Acero |
79121.28 |
310729.6 |
156012.9 |
154798.2 |
27225.15 |
17.45 |
0.5 |
0.56 |
| Tabla 3 de 4 |
# VALORES ATÍPICOS
valores_atipicos <- boxplot.stats(acero)$out
n_atipicos <- length(valores_atipicos)
min_atipico <- if(n_atipicos > 0) min(valores_atipicos) else 0
max_atipico <- if(n_atipicos > 0) max(valores_atipicos) else 0
TablaOutliers <- data.frame(Cantidad = n_atipicos, Mínimo = min_atipico, Máximo = max_atipico)
| TABLA N°4: Valores atípicos de la variable Impacto de acero |
| Cantidad |
Mínimo |
Máximo |
| 150 |
79121.28 |
310729.6 |
| Tabla 4 de 4 |