Variable cuantitativa discreta

Número de estaciones sismicas

1 Extraer la variable discreta

datos <- read.csv("~/DATOS_INDIA/Earthquakes (2).csv")
estaci_sismicas <- datos$nst
ValorNulo<- is.na(estaci_sismicas)
estaci_sismicas<- na.omit(estaci_sismicas)

2 Tabla de distribución de frecuencias

Clasificación del número de estaciones

clasificacion <- c()
for(i in 1:length(estaci_sismicas)){
  if(estaci_sismicas[i] < 50)
    clasificacion[i] <- "0-50"
  else if(estaci_sismicas[i] >= 50 && estaci_sismicas[i] < 100)
    clasificacion[i] <- "50-100"
  else if(estaci_sismicas[i] >= 100 && estaci_sismicas[i] < 150)
    clasificacion[i] <- "100-150"
  else if(estaci_sismicas[i] >= 150 && estaci_sismicas[i] < 200)
    clasificacion[i] <- "150-200"
  else if(estaci_sismicas[i] >= 200 && estaci_sismicas[i] < 250)
    clasificacion[i] <- "200-250"
  else if(estaci_sismicas[i] >= 250 && estaci_sismicas[i] < 300)
    clasificacion[i] <- "250-300" 
  else if(estaci_sismicas[i] >= 300 && estaci_sismicas[i] < 350)
    clasificacion[i] <- "300-350" 
  else if(estaci_sismicas[i] >= 350 && estaci_sismicas[i] < 400)
    clasificacion[i] <- "350-400"
  else if(estaci_sismicas[i] >= 400 && estaci_sismicas[i] < 450)
    clasificacion[i] <- "400-450"
  else if(estaci_sismicas[i] >= 450 && estaci_sismicas[i] < 500)
    clasificacion[i] <- "450-500"
  else if(estaci_sismicas[i] >= 500 && estaci_sismicas[i] < 550)
    clasificacion[i] <- "500-550"
  else if(estaci_sismicas[i] >= 550 && estaci_sismicas[i] < 600)
    clasificacion[i] <- "550-600" 
  else if(estaci_sismicas[i] >= 600 && estaci_sismicas[i] < 650)
    clasificacion[i] <- "600-650"
  else if(estaci_sismicas[i] >= 650 && estaci_sismicas[i] < 700)
    clasificacion[i] <- "650-700"
  else
    clasificacion[i] <- ">700"
}

Clasificación del número de estaciones

niveles_ordenados <- c("0-50", "50-100", "100-150", "150-200", "200-250", "250-300",
                       "300-350","350-400","400-450","450-500","500-550","550-600",
                       "600-650","650-700",">700")

clasificacion <- factor(clasificacion, levels = niveles_ordenados, ordered = TRUE)

Creación de la tabla de distribución de frecuencia

Tablaestaci_sismicas<- as.data.frame(table(clasificacion))
colnames(Tablaestaci_sismicas) <- c("nst", "ni")
Tablaestaci_sismicas
ni<-Tablaestaci_sismicas$ni
sum(ni)
## [1] 13162
hi <- (ni / sum(ni)) * 100
sum(hi)
## [1] 100
Tablaestaci_sismicas<- data.frame(Tablaestaci_sismicas, hi = round(hi, 2))
Ni_asc <- cumsum(ni)
Hi_asc <- round(cumsum(Tablaestaci_sismicas$hi))
Ni_dsc <-rev(cumsum(rev(ni)))
Hi_dsc <- round(rev(cumsum(rev(Tablaestaci_sismicas$hi))))

NST<-Tablaestaci_sismicas$nst
ni<-Tablaestaci_sismicas$ni
hi<-Tablaestaci_sismicas$hi

Tablaestaci_sismicasF<-data.frame(NST,ni,hi,Ni_asc,Ni_dsc,Hi_asc,Hi_dsc)
Tablaestaci_sismicasF

Tabla de distribución

total_ni<-sum(ni)
total_hi<-100
TDFDnstCompleto<-rbind(Tablaestaci_sismicasF, data.frame(NST=" Total",
                                                        ni=total_ni, hi=total_hi, Ni_asc=" ", Ni_dsc=" ", 
                                                        Hi_asc=" ", Hi_dsc=" "))
library(gt)
## Warning: package 'gt' was built under R version 4.4.3
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.4.3
## 
## 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<-TDFDnstCompleto %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nº.7*"),
    subtitle = md("**Tabla de distribucion de Frecuencias simples y acumuladas
                  de las estaciones sismicas de los Sismos en el Subcontinente Indio (2000-2024)")
  ) %>%
  tab_source_note(
    source_note = md("Autor:Grupo 1")
  ) %>%
  tab_options(
    table.border.top.color = "black",
    table.border.bottom.color = "black",
    table.border.top.style = "solid",
    table.border.bottom.style = "solid",
    column_labels.border.top.color = "black",
    column_labels.border.bottom.color = "black",
    column_labels.border.bottom.width = px(2),
    row.striping.include_table_body = TRUE,
    heading.border.bottom.color = "black",
    heading.border.bottom.width = px(2),
    table_body.hlines.color = "gray",
    table_body.border.bottom.color = "black"
  )  %>%
  tab_style(
    style = cell_text(weight = "bold"),
    locations = cells_body(
      rows = NST== "Total"
    )
  ) 
Tabla
Tabla Nº.7
**Tabla de distribucion de Frecuencias simples y acumuladas de las estaciones sismicas de los Sismos en el Subcontinente Indio (2000-2024)
NST ni hi Ni_asc Ni_dsc Hi_asc Hi_dsc
0-50 9887 75.12 9887 13162 75 100
50-100 1825 13.87 11712 3275 89 25
100-150 646 4.91 12358 1450 94 11
150-200 305 2.32 12663 804 96 6
200-250 158 1.20 12821 499 97 4
250-300 115 0.87 12936 341 98 3
300-350 71 0.54 13007 226 99 2
350-400 57 0.43 13064 155 99 1
400-450 43 0.33 13107 98 100 1
450-500 22 0.17 13129 55 100 0
500-550 17 0.13 13146 33 100 0
550-600 5 0.04 13151 16 100 0
600-650 10 0.08 13161 11 100 0
650-700 0 0.00 13161 1 100 0
>700 1 0.01 13162 1 100 0
Total 13162 100.00
Autor:Grupo 1

3 Histogramas

3.1 Histograma de frecuencia absoluta local (ni)

barplot(ni, space=0, main="Grafica Nº23: Frecuencia de las estaciones sismicas 
de los Sismos en el Subcontinente Indio (Local)",col="blue", las=2,
         ylab="Cantidad", names.arg=Tablaestaci_sismicasF$NST)

3.2 Histograma de frecuencia absoluta global (ni)

barplot(ni, space=0, main="Grafica Nº24: Frecuencia de las estaciones sismicas 
de los Sismos en el Subcontinente Indio (Global)",col="blue", las=2,
        xlab="Numero de estaciones", ylab="Cantidad",
        names.arg=Tablaestaci_sismicasF$NST, ylim=c(0,13162))

3.3 Histograma de porcentaje local (hi)

barplot(hi, space=0, main="Grafica Nº25: Porcentaje de las estaciones sismicas
de los Sismos en el Subcontinente Indio (Local)",col="blue", las=2,
        xlab="Numero de estaciones ", ylab="Porcenjate", names.arg=Tablaestaci_sismicasF$NST)

3.4 Histograma de porcentaje global (hi)

barplot(hi, space=0, main="Grafica Nº26: Porcentaje de las estaciones sismicas
de los Sismos en el Subcontinente Indio(Global)",col="blue", las=2,
        xlab="Numero de estaciones", ylab="Porcentaje",
        names.arg=Tablaestaci_sismicasF$NST, ylim=c(0,100))

4 Diagramas

4.1 Ojivas

4.1.1 Ojivas combinadas (ni)

plot(x=1:length(Tablaestaci_sismicasF$NST), y=Tablaestaci_sismicasF$Ni_dsc, type="p",
     col="black", xlab="NST", ylab="Frecuencia",
     main ="Gráfica Nº27: Ojivas combinadas de NST 
     de los Sismos del Subcontinente Indio",
     xaxt="n")
axis(side=1, at=1:length(Tablaestaci_sismicasF$NST), labels=Tablaestaci_sismicasF$NST, las=2)
points(x=1:length(Tablaestaci_sismicasF$NST), y=Tablaestaci_sismicasF$Ni_asc, type="p",col="blue")

4.1.2 Ojivas combinadas (hi)

plot(x=1:length(Tablaestaci_sismicasF$NST), y=Tablaestaci_sismicasF$Hi_dsc, type="p",
     col="black", xlab="Magnitud", ylab="Frecuencia",
     main ="Gráfica Nº28: Ojivas combinadas de NST
     de los Sismos del Subcontinente Indio", xaxt="n")
axis(side=1, at=1:length(Tablaestaci_sismicasF$NST), labels=Tablaestaci_sismicasF$NST, las=2)
points(x=1:length(Tablaestaci_sismicasF$NST), y=Tablaestaci_sismicasF$Hi_asc, type="p",col="blue")

4.2 Diagrama de caja

cajaBigotes<-boxplot(estaci_sismicas, horizontal=TRUE, col="blue",
                     main ="Gráfica Nº29: Distribución NST de los sismos del Subcontinente Indio",
                     xlab="NST",
                     names.arg=estaci_sismicas)

Identificar los valores atípicos

outliers<-boxplot.stats(estaci_sismicas)$out 
num_outliers <- length(outliers) 
minoutliers<-min(outliers)
maxoutliers<-max(outliers)

5 Indicadores estadísticos

5.1 Posición

Mediana

Me<-median(estaci_sismicas)

Media aritmética

ri<-min(estaci_sismicas)
rs<-max(estaci_sismicas)
x<-mean(estaci_sismicas)

5.2 Dispersión

Varianza

var(estaci_sismicas)
## [1] 4469.819

Desviación estándar

s<-sd(estaci_sismicas)

Coeficiente de variación

CV <- ((s/x) * 100)

5.3 Forma

Coeficiente de asimetría

library(e1071)
## Warning: package 'e1071' was built under R version 4.4.3
As<-skewness(estaci_sismicas)

Coeficiente de kurtosis

k<-kurtosis(estaci_sismicas)

6 Tabla resumen

Variable<-c("nst")
TablaIndicadores<-data.frame(Variable,ri,rs,round(x,2),Me,round(s,2), round(CV,2), round(As,2),round(k,2),round(minoutliers,2))
colnames(TablaIndicadores)<-c("Variable","minimo","máximo","x","Me","sd","Cv (%)","As","K","min_out")
library(knitr)
## Warning: package 'knitr' was built under R version 4.4.3
kable(TablaIndicadores, format = "markdown", caption = "Tabla 8. Indicadores
      estadíticos de la variable nst")
Tabla 8. Indicadores estadíticos de la variable nst
Variable minimo máximo x Me sd Cv (%) As K min_out
nst 4 724 47.69 25 66.86 140.2 3.85 19.06 101

7 Conclusión

La variable número de estaciones donde sus valores fluctúan entre 4 y 724, sus valores están en torno a 47, con una desviación estándar de 66.86 siendo un conjunto muy heterogéneo cuyos valores atípicos están entre 101 mínimo de ouliers.

La acumulación de valores está en la parte baja de manera fuerte. Por todo lo anterior el comportamiento es medianamente perjudicial, debido a que hay una menor cantidad de registros de sismos confiables por lo que a menor cantidad de estaciones sismicas menor es la confiabilidad del registro.