Dataset <- read.csv2("Dataset.csv")
datos <- Dataset
str(datos)
## 'data.frame': 2996 obs. of 60 variables:
## $ index : int 0 1 2 3 4 5 6 7 8 9 ...
## $ FID : int 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 ...
## $ NGAID : logi NA NA NA NA NA NA ...
## $ SRCLNKID : int 3608932 3608933 3608941 3608943 4607236 4607273 3609147 3609148 3609264 4003177 ...
## $ METLNKID : logi NA NA NA NA NA NA ...
## $ FEATTYPE : chr "POINT" "POINT" "POINT" "POINT" ...
## $ SECCLASS : chr "UNCLASSIFIED" "UNCLASSIFIED" "UNCLASSIFIED" "UNCLASSIFIED" ...
## $ NAME : chr "DOUGLAS G. KLIMER QUARRIES - SHEA QUARRY" "ROCK RIDGE STONE - BURTS BROTHERS" "DAVID B. WILLIAMS - STANKAVAGE QUARRY" "SCOTT H ROSENKRANS - ROSENKRANS" ...
## $ AREA_ : int NA NA NA NA NA NA NA NA NA NA ...
## $ PHONE : chr " " " " " " " " ...
## $ ADDRESS : chr "BOWBRIDGE ROAD" "SHOWALTER ROAD" "STATE HIGHWAY 29" "BOLLES ROAD" ...
## $ ADDRESS2 : chr " " " " " " " " ...
## $ CITY : chr "FRIENDSVILLE" "MONTROSE" "SPRINGVILLE" "MONTROSE" ...
## $ STATE : chr "PA" "PA" "PA" "PA" ...
## $ ZIP : int 18818 18801 18844 18801 25140 25130 18822 16838 18657 37715 ...
## $ ZIPP4 : int NA NA NA NA NA NA NA NA NA NA ...
## $ COUNTY : chr "SUSQUEHANNA" "SUSQUEHANNA" "SUSQUEHANNA" "SUSQUEHANNA" ...
## $ FIPS : int 42115 42115 42115 42115 54081 54005 42115 42033 42131 47025 ...
## $ DIRECTIONS : chr " " " " " " " " ...
## $ EMERGTITLE : logi NA NA NA NA NA NA ...
## $ EMERGPHONE : logi NA NA NA NA NA NA ...
## $ EMERGEXT : logi NA NA NA NA NA NA ...
## $ CONTDATE : chr "2006-08-09T00:00:00.000Z" "2006-08-09T00:00:00.000Z" "2006-08-09T00:00:00.000Z" "2006-08-16T00:00:00.000Z" ...
## $ CONTHOW : chr "ALT REF" "ALT REF" "ALT REF" "ALT REF" ...
## $ GEODATE : chr "2006-08-09T00:00:00.000Z" "2006-08-09T00:00:00.000Z" "2006-08-09T00:00:00.000Z" "2006-08-16T00:00:00.000Z" ...
## $ GEOHOW : chr "MANUAL" "MANUAL" "MANUAL" "MANUAL" ...
## $ HSIPTHEMES : chr "IMPORTANT INDUSTRY, CHEMICAL AND MANUFACTURING, MINING, OTHER MINING FACILITIES" "IMPORTANT INDUSTRY, CHEMICAL AND MANUFACTURING, MINING, OTHER MINING FACILITIES" "IMPORTANT INDUSTRY, CHEMICAL AND MANUFACTURING, MINING, OTHER MINING FACILITIES" "IMPORTANT INDUSTRY, CHEMICAL AND MANUFACTURING, MINING, OTHER MINING FACILITIES" ...
## $ NAICSCODE : int 212311 212311 212311 212311 212112 212112 212311 212311 212311 212112 ...
## $ NAICSDESCR : chr "SANDSTONE MINING OR QUARRYING" "SANDSTONE MINING OR QUARRYING" "SANDSTONE MINING OR QUARRYING" "SANDSTONE MINING OR QUARRYING" ...
## $ GEOLINKID : int 98024482 98081746 98341241 98309770 123523871 126688889 123356282 117022524 125411495 124170624 ...
## $ SOURCE : chr "TGS" "TGS" "TGS" "TGS" ...
## $ x : num -76 -76 -75.9 -75.8 -81.5 ...
## $ y : chr "41,965" "41,87054" "41,73163" "41,89329" ...
## $ ST_VENDOR : chr "NAVTEQ" "NAVTEQ" "NAVTEQ" "NAVTEQ" ...
## $ ST_VERSION : chr "2006Q1" "2006Q1" "2006Q1" "2006Q1" ...
## $ GEOPREC : chr "BLOCKFACE" "BLOCKFACE" "BLOCKFACE" "BLOCKFACE" ...
## $ PHONELOC : chr "NO" "NO" "NO" "NO" ...
## $ QC_QA : chr "TGS" "TGS" "TGS" "TGS" ...
## $ MINE_ID : int 3608932 3608933 3608941 3608943 4607236 4607273 3609147 3609148 3609264 4003177 ...
## $ INSPEC_OFF : int 2621 2621 2621 2621 401 406 2621 2681 2621 703 ...
## $ SIC : int 14114 14114 14114 14114 12110 12110 14111 14114 14115 12110 ...
## $ CANVASS : int 6 6 6 6 2 2 6 6 6 2 ...
## $ MINE_TYPE : int 6 6 6 6 11 11 6 6 6 11 ...
## $ STAT_CODE : chr "2" "2" "2" "2" ...
## $ STAT_DATE : int 20010327 20040520 20040630 20010330 19990524 19970527 20040219 20030529 20040709 20050817 ...
## $ COMPNAME : chr "DOUGLAS G. KLIMER QUARRIES" "ROCK RIDGE STONE" "DAVID B. WILLIAMS" "SCOTT H ROSENKRANS" ...
## $ MINE_PLANT : chr "SHEA QUARRY" "BURTS BROS" "STANKAVAGE QUARRY" "ROSENKRANS" ...
## $ MADDRESS : chr "RR 1 BOX 85K" "RR 2, BOX 151-B" "RR #2, BOX 197" "RD #3, BOX 94" ...
## $ MCITY : chr "UNIONDALE" "KINGSLEY" "KINGSLEY" "MONTROSE" ...
## $ MSTATE : chr "PA" "PA" "PA" "PA" ...
## $ MZIP : int 18470 18826 18826 18801 25140 25130 18822 16833 18657 37752 ...
## $ MCOUNTY : chr "SUSQUEHANNA" "SUSQUEHANNA" "SUSQUEHANNA" "SUSQUEHANNA" ...
## $ SUBUNIT_NU : int 2 1 1 1 2 3 1 2 1 2 ...
## $ SUBUNIT_1 : int 3 3 3 3 1 1 3 3 3 1 ...
## $ SUBUNIT_2 : int 99 NA NA NA 2 2 NA 99 NA 2 ...
## $ SUBUNIT_3 : int NA NA NA NA NA 99 NA NA NA NA ...
## $ SUBUNIT_4 : int NA NA NA NA NA NA NA NA NA NA ...
## $ CO2.total.emissions..tons..by.state: chr "84463281.51" "84463281.51" "84463281.51" "84463281.51" ...
## $ NOx.total.emissions..tons..by.state: chr "46.962.424" "46.962.424" "46.962.424" "46.962.424" ...
## $ CH4.total.emissions..tons..by.state: chr "N/A" "N/A" "N/A" "N/A" ...
La variable STAT_CODE es una variable cualitativa nominal, ya que representa categorías del estado operativo de las instalaciones mineras y no posee un orden jerárquico entre sus categorías.
El análisis de esta variable permite identificar la proporción de minas activas, temporalmente inactivas y cerradas, información fundamental para estudiar su relación con las emisiones de CO₂, NOx y CH₄.
COD_ESTADO <- trimws(as.character(datos$STAT_CODE))
COD_ESTADO <- COD_ESTADO[!is.na(COD_ESTADO) & COD_ESTADO != ""]
n <- length(COD_ESTADO)
data.frame(
Variable = "STAT_CODE",
Registros_Validos = n
)
## Variable Registros_Validos
## 1 STAT_CODE 2922
codigos <- c("A","B","C","F","1","2","3")
etiquetas <- c(
"A-Activa",
"B-Temp.Inactiva",
"C-Cerrada",
"F-Inactiva Perm.",
"1-Activa Carbon",
"2-Temp.Inactiva Carbon",
"3-Cerrada Carbon"
)
COD_ESTADO_etiq <- COD_ESTADO
for(i in seq_along(codigos)){
COD_ESTADO_etiq[COD_ESTADO_etiq == codigos[i]] <- etiquetas[i]
}
TDF <- as.data.frame(table(COD_ESTADO_etiq)) %>%
rename(
Estado = COD_ESTADO_etiq,
fi = Freq
) %>%
arrange(desc(fi)) %>%
mutate(
fri = round(fi/n*100,2),
Ni_asc = cumsum(fi),
Ni_des = rev(cumsum(rev(fi))),
Hi_asc = round(cumsum(fri),2),
Hi_des = round(rev(cumsum(rev(fri))),2)
)
TDF_total <- TDF %>%
add_row(
Estado = "Total",
fi = sum(TDF$fi),
fri = round(sum(TDF$fri),2),
Ni_asc = max(TDF$Ni_asc),
Ni_des = min(TDF$Ni_des),
Hi_asc = max(TDF$Hi_asc),
Hi_des = min(TDF$Hi_des)
)
TDF_total
## Estado fi fri Ni_asc Ni_des Hi_asc Hi_des
## 1 A-Activa 1198 41.00 1198 2922 41.00 100.01
## 2 1-Activa Carbon 688 23.55 1886 1724 64.55 59.01
## 3 2-Temp.Inactiva Carbon 471 16.12 2357 1036 80.67 35.46
## 4 C-Cerrada 277 9.48 2634 565 90.15 19.34
## 5 B-Temp.Inactiva 202 6.91 2836 288 97.06 9.86
## 6 F-Inactiva Perm. 44 1.51 2880 86 98.57 2.95
## 7 3-Cerrada Carbon 42 1.44 2922 42 100.01 1.44
## 8 Total 2922 100.01 2922 42 100.01 1.44
TDF_total %>%
gt() %>%
tab_header(
title = md("**Tabla 1**"),
subtitle = md("Distribución de frecuencias por estado operativo")
) %>%
cols_label(
Estado = "Estado Operativo",
fi = "fi",
fri = "fri (%)",
Ni_asc = "Ni Asc.",
Ni_des = "Ni Desc.",
Hi_asc = "Hi Asc. %",
Hi_des = "Hi Desc. %"
) %>%
tab_style(
style = cell_text(weight = "bold"),
locations = cells_body(rows = Estado == "Total")
)
| Tabla 1 | ||||||
| Distribución de frecuencias por estado operativo | ||||||
| Estado Operativo | fi | fri (%) | Ni Asc. | Ni Desc. | Hi Asc. % | Hi Desc. % |
|---|---|---|---|---|---|---|
| A-Activa | 1198 | 41.00 | 1198 | 2922 | 41.00 | 100.01 |
| 1-Activa Carbon | 688 | 23.55 | 1886 | 1724 | 64.55 | 59.01 |
| 2-Temp.Inactiva Carbon | 471 | 16.12 | 2357 | 1036 | 80.67 | 35.46 |
| C-Cerrada | 277 | 9.48 | 2634 | 565 | 90.15 | 19.34 |
| B-Temp.Inactiva | 202 | 6.91 | 2836 | 288 | 97.06 | 9.86 |
| F-Inactiva Perm. | 44 | 1.51 | 2880 | 86 | 98.57 | 2.95 |
| 3-Cerrada Carbon | 42 | 1.44 | 2922 | 42 | 100.01 | 1.44 |
| Total | 2922 | 100.01 | 2922 | 42 | 100.01 | 1.44 |
TDF_graf <- TDF_total %>%
filter(Estado != "Total")
par(mar = c(10,5,4,2))
barplot(
TDF_graf$fi,
names.arg = TDF_graf$Estado,
las = 2,
col = "#70AD47",
main = "Frecuencia Absoluta — STAT_CODE",
ylab = "Frecuencia absoluta (fi)"
)
par(mar = c(10,5,4,2))
barplot(
TDF_graf$fri,
names.arg = TDF_graf$Estado,
las = 2,
col = "#C5E0A8",
main = "Frecuencia Relativa — STAT_CODE",
ylab = "Frecuencia relativa (%)",
ylim = c(0,max(TDF_graf$fri)+5)
)
colores <- c(
"#70AD47","#C5E0A8","#375623",
"#A9D18E","#255E24","#548235",
"#E2EFDA"
)
pie(
TDF_graf$fri,
labels = NA,
col = colores[1:nrow(TDF_graf)],
main = "Distribución porcentual — STAT_CODE"
)
legend(
"topright",
legend = paste0(
TDF_graf$Estado,
" (",
TDF_graf$fri,
"%)"
),
fill = colores[1:nrow(TDF_graf)],
cex = 0.8
)
moda_idx <- which.max(TDF_graf$fi)
moda <- TDF_graf$Estado[moda_idx]
moda_fi <- TDF_graf$fi[moda_idx]
moda_fri <- TDF_graf$fri[moda_idx]
data.frame(
Variable = "Estado operativo (STAT_CODE)",
Indicador = "Moda",
Resultado = paste0(
moda,
" (",
moda_fi,
" instalaciones, ",
moda_fri,
"%)"
)
) %>%
gt() %>%
tab_header(
title = md("**Tabla 2**"),
subtitle = md("Indicadores estadísticos")
)
| Tabla 2 | ||
| Indicadores estadísticos | ||
| Variable | Indicador | Resultado |
|---|---|---|
| Estado operativo (STAT_CODE) | Moda | A-Activa (1198 instalaciones, 41%) |
La variable STAT_CODE registra el estado operativo de cada instalación minera. Se analizaron 2922 registros válidos. El estado operativo más frecuente fue A-Activa, con 1198 registros que representan 41% del total. Esta información permite identificar la proporción de minas activas e inactivas y constituye un elemento clave para el análisis de correlación entre la actividad minera y las emisiones de CO₂, NOx y CH₄.