1. Introducción

1.1 Planteamiento del Problema

El clima desempeña un papel esencial en el mantenimiento del equilibrio ambiental y en la disponibilidad de los recursos naturales, especialmente en regiones andinas, donde incluso leves cambios en las condiciones atmosféricas pueden producir efectos relevantes. En este sentido, la estadística constituye una herramienta clave, ya que permite analizar, interpretar y comprender la información climática, facilitando la detección de patrones, niveles de variabilidad y posibles tendencias relacionadas con el cambio climático. El volcán Antisana, situado en la cordillera Oriental del Ecuador, representa una zona de estudio de alto interés debido a las particulares condiciones climáticas que caracterizan a los ecosistemas de alta montaña. El presente trabajo tiene como objetivo analizar datos climáticos para comprender el comportamiento del clima en el volcán Antisana y generar información que contribuya a una adecuada toma de decisiones en el ámbito ambiental. # 1. 2 Mapa de Ubicación library(magick) library(cowplot) # Leer la imagen img <- image_read(“C:/Users/Personal/Documents/Mapa Antisana.png”) # Dibujarla en el lienzo ggdraw() + draw_image(img) # 1.3 Objetivos # 1.3.1 General Analizar estadísticamente el comportamiento del clima en el volcán Antisana, mediante el uso de herramientas computacionales adecuadas para la medición de variables.

1.3.2 EspecÍficos

1.Conocer la situación en 2012 sobre el comportamiento del clima en el volcán Antisana a través de sus características más importantes y medidas estadísticas.

2.Emplear modelos de probabilidad para establecer conclusiones sobre el comportamiento del clima en el volcán Antisana a partir de los resultados de la muestra.

3.Deducir relaciones entre variables del clima en el volcán Antisana con el fin de realizar estimaciones sobre el estudio. # 2. Estadística Descriptiva # 2.1 Población Todos las observaciones climáticas en el volcán Antisana

U: {x/x 𝜖 Observaciones climáticas ^ Volcán(x)=“Antisana”}.

2.2 Individuo

Cada uno de las observaciones climáticas en el volcán Antisana

Individuo: Xi: i=1,2,3,…,n

2.3 Muestra

Los datos disponibles corresponden a una muestra compuesta por un conjunto de observaciones climáticas en el volcán Antisana, teniendo un total de 366 observaciones, correspondientes al año 2012.

M: {x/x Observaciones climáticas ^ Volcán (x)=“Antisana” ^ Año(x) = 2012}.

2.4 Tabla de variables

A continuación se presenta la tabla de variables analizadas en el estudio:

https://uceedu-my.sharepoint.com/:x:/g/personal/cdyaneza_uce_edu_ec/IQBKe8HCjHELTo-fIObgLf6uATxehTi-ubf-3PVq0jrttZE?e=Htg2lF

1. Estadistica Descriptiva

# 2.5 Variables 
# 2.5.1 Meses
library(lubridate)
## 
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
## 
##     date, intersect, setdiff, union
library(gt)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
datos<-read.csv("weatherdataANTISANA.csv", header = TRUE, dec = ".",
                sep = ",")
# Extracción de la variable
# Convertir a fecha
datos$Date <- as.Date(datos$Date, format = "%d/%m/%Y")

# Extraer mes numérico (366 valores)
datos$mes <- month(datos$Date)

# Nombres de meses (12 valores)
meses_12 <- c("enero", "febrero", "marzo", "abril", "mayo", "junio",
              "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre")

# Mes en palabras (366 valores)
datos$mes_nombre <- meses_12[datos$mes]
meses <- meses_12[datos$mes]
orden_meses <- c("enero", "febrero", "marzo", "abril", "mayo", "junio",
                 "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre")
meses <- factor(meses, levels = orden_meses, ordered = TRUE)

#TDF variable meses
TDF_meses<-data.frame(table(meses))
ni <- TDF_meses$Freq
hi <- round((ni / sum(ni)) * 100, 2)
meses <- TDF_meses$meses
TDF_meses <- data.frame(meses, ni, hi)
Summary <- data.frame(meses = "TOTAL", ni = sum(ni),hi = 100)
TDF_meses<- rbind(TDF_meses,Summary)
colnames(TDF_meses) <- c("Meses", "ni", "hi(%)")


# TABLA CREACIÓN
TDF_meses %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 1*"),
    subtitle = md("**Distribucion de frecuencia de los meses en el estudios del clima en el volcán Antisana en 2012 **")
  ) %>%
  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"
  )
Tabla Nro. 1
**Distribucion de frecuencia de los meses en el estudios del clima en el volcán Antisana en 2012 **
Meses ni hi(%)
enero 31 8.47
febrero 29 7.92
marzo 31 8.47
abril 30 8.20
mayo 31 8.47
junio 30 8.20
julio 31 8.47
agosto 31 8.47
septiembre 30 8.20
octubre 31 8.47
noviembre 30 8.20
diciembre 31 8.47
TOTAL 366 100.00
Autor: Grupo 1
# Gráfica de distribución de frecuencia 
#Diagrama de barras local
# Excluir la fila TOTAL
TablaPlot <- TDF_meses[TDF_meses$Meses != "TOTAL", ]
barplot(
  TablaPlot$ni,
  names.arg = TablaPlot$Meses,
  main = "Grafica Nro 1: Distribución de los meses en el estudio del clima en 
  el volcán Antisana en 2012",
  xlab = "Meses",
  ylab = "Cantidad",
  col = c("blue"),
  ylim = c(0,40),
  las = 2,
  cex.axis = 0.7,
  cex.names = 0.8,
  cex.main = 0.7
)

# Diagrama de barras global
barplot(TablaPlot$ni, main = "Gráfica N°2: Distribución de los meses en el estudio del clima en 
  el volcán Antisana en 2012 
        ",
        xlab = "Meses",
        ylab = "Cantidad",
        col = "lightpink",
        ylim = c(0,366),
        las=2,
        cex.names = 0.8,
        cex.main = 0.9,
        cex.axis = 0.8,
        names.arg = TablaPlot$Meses)

#Grafica porcentaje
barplot(TablaPlot$`hi(%)`, main = "Gráfica N°3: Distribución de los meses en el estudio del clima en 
  el volcán Antisana en 2012 ",
        xlab = "Meses",
        ylab = "Porcentaje (%)",
        col = "violet",
        ylim = c(0,10),
        las = 2,
        cex.names = 0.8,
        cex.main = 0.9,
        cex.axis = 0.9,
        names.arg = TablaPlot$Meses)

#Siguientes graficas
barplot(TablaPlot$`hi(%)`,
        main="Gráfica No. 4:
        Distribución de los meses en el estudio del clima en 
  el volcán Antisana en 2012 ",
        xlab= "Meses",
        ylab="Porcentaje (%)",
        names.arg= TablaPlot$Meses,
        col = "pink",
        cex.names = 0.7,
        las=2,
        cex.main = 0.9,
        cex.axis = 0.8,
        ylim=c(0,100))

#Diagrama Circular 
library(RColorBrewer)
n <- nrow(TablaPlot)
colores <- brewer.pal(min(n, 12), "Set3") 
color <- adjustcolor(colores, alpha.f = 0.9)
etiqueta<-paste(TablaPlot$`hi(%)`,"%")

pie(TablaPlot$`hi(%)`,
    labels = etiqueta,
    cex.main = 0.9,
    radius = 1,
    col=color,
    main="Gráfica No.5: Distribución de los meses en el estudio del clima en 
  el volcán Antisana en 2012 ")

legend("bottomright",
       legend = TablaPlot$Meses,
       title = "Leyenda",
       cex = 0.7,
       fill = color)

# Indicadores estadísticos
Variable <- "Meses"
Rango <- "R= {Enero,Febrero,Marzo,Abril,
Mayo,Junio,Julio,Agosto,Septiembre,
Octubre,Noviembre,Diciembre}"

# Mediana
Me<-"Junio, Julio"

# Media
X <- "-"
# Moda
Mo <- "[enero,marzo, mayo, julio, agosto, octubre, diciembre]"

#Indicadores de Dispersión

# Varianza
var<-"-"
# Desviación estandar
desv<-"-"

# Coeficiente de variación 
CV <- "-"

#Indicadores de Forma

# Coeficiente de Asimetría
As <-"-"
# Curtosis
K <- "-"
Tabla_indicadores <- data.frame(Variable,Rango,X,Me,Mo,var,desv,CV,As,K)
colnames(Tabla_indicadores) <- c("Variable","Rango","X", "Me", "Mo","Var",
                                 "sd","CV","As","K")

library(gt)
library(dplyr)
Tabla_indicadores %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 2*"),
    subtitle = md("**Indicadores Estadísticos de los meses en el estudio del clma en el volcán Antisana en 2012 **")
  ) %>%
  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"
  )
Tabla Nro. 2
**Indicadores Estadísticos de los meses en el estudio del clma en el volcán Antisana en 2012 **
Variable Rango X Me Mo Var sd CV As K
Meses R= {Enero,Febrero,Marzo,Abril, Mayo,Junio,Julio,Agosto,Septiembre, Octubre,Noviembre,Diciembre} - Junio, Julio [enero,marzo, mayo, julio, agosto, octubre, diciembre] - - - - -
Autor: Grupo 1
    # 2.5.2 Temperatura Máxima 
    # Carga de datos 
    datos<-read.csv("weatherdataANTISANA.csv", header = TRUE, dec = ".",
                    sep = ",")
    # Extracción de la variable
    temperatura_máxima<-datos$Max.Temperature
    # TDF simplificada
    Histograma_temperatura_máxima<-hist(temperatura_máxima,plot = FALSE)
    breaks <- Histograma_temperatura_máxima$breaks
    Li <- breaks[1:(length(breaks)-1)]
    Ls <- breaks[2:length(breaks)]
    MC<-(Li+Ls)/2
    ni<-Histograma_temperatura_máxima$counts
    n<-length(temperatura_máxima)
    hi <- (ni / n) * 100
    Ni_asc <- cumsum(ni) 
    Hi_asc <- cumsum(hi) 
    Ni_desc <- rev(cumsum(rev(ni)))
    Hi_desc <- rev(cumsum(rev(hi)))
    TDF_temperaturamax <- data.frame(
      Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
      MC = round(MC, 2),
      ni = ni,
      hi= round(hi, 2),
      Ni_ascendente = Ni_asc,
      Hi_ascendente = round(Hi_asc, 2),
      Ni_descendente = Ni_desc,
      Hi_descendente = round(Hi_desc, 2)
    )
    colnames(TDF_temperaturamax) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    totaless <- data.frame(
      Intervalo = "Totales",
      MC = "-",
      ni = sum(ni),           # suma total de ni
      hi = sum(hi),            # suma total de hi (%)
      Ni_ascendente = "-",
      Ni_descendente = "-",
      Hi_ascendente = "-",
      Hi_descendente = "-"
    )
    colnames(totaless) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    # Agregar al final de la tabla
    TDF_temperaturamax <- rbind(TDF_temperaturamax, totaless)
    TDF_temperaturamax %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 1*"),
        subtitle = md("**Distribucion de frecuencia simplificado de la temperatura máxina,estudio del clima volcán Antisana en 2012 **")
      ) %>%
      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"
      )
Tabla Nro. 1
**Distribucion de frecuencia simplificado de la temperatura máxina,estudio del clima volcán Antisana en 2012 **
Intervalo MC ni hi(%) Ni_asc Hi_asc (%) Ni_desc Hi_desc (%)
[10 - 11) 10.5 7 1.91 7 1.91 366 100
[11 - 12) 11.5 23 6.28 30 8.2 359 98.09
[12 - 13) 12.5 41 11.20 71 19.4 336 91.8
[13 - 14) 13.5 53 14.48 124 33.88 295 80.6
[14 - 15) 14.5 37 10.11 161 43.99 242 66.12
[15 - 16) 15.5 41 11.20 202 55.19 205 56.01
[16 - 17) 16.5 40 10.93 242 66.12 164 44.81
[17 - 18) 17.5 42 11.48 284 77.6 124 33.88
[18 - 19) 18.5 29 7.92 313 85.52 82 22.4
[19 - 20) 19.5 21 5.74 334 91.26 53 14.48
[20 - 21) 20.5 16 4.37 350 95.63 32 8.74
[21 - 22) 21.5 9 2.46 359 98.09 16 4.37
[22 - 23) 22.5 4 1.09 363 99.18 7 1.91
[23 - 24) 23.5 3 0.82 366 100 3 0.82
Totales - 366 100.00 - - - -
Autor: Grupo 1
    #Gráficas 
    #Histogramas local
    hist(temperatura_máxima, breaks = 15,
         main = "Gráfica N°1: Distribución de la temperatura máxima
     presente en el estudio del clima en el volcán Antisana en 2012",
         xlab = " Temperatura máxima (°C)",
         ylab = "Cantidad",
         ylim = c(0, max(ni)),
         col = "yellow",
         cex.main = 0.9,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_temperatura_máxima$breaks,
         labels = Histograma_temperatura_máxima$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma global
    hist(temperatura_máxima, breaks = 15,
         main = "Gráfica N°2:Distribución de la temperatura máxima
     presente en el estudio del clima en el volcán Antisana en 2012 ",
         xlab = "Temperatura máxima (°C)",
         ylab = "Cantidad",
         ylim = c(0, length(temperatura_máxima)),
         col = "orange",
         cex.main = 1,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_temperatura_máxima$breaks,
         labels = Histograma_temperatura_máxima$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma porcentual global
    TDF_temperaturamax$`hi (%)` <- as.numeric(TDF_temperaturamax$`hi(%)`)
    
    post<-barplot(TDF_temperaturamax$`hi(%)`[1:(nrow(TDF_temperaturamax)-1)],
                  space = 0,
                  col = "green",
                  main = "Gráfica N°3:Distribución de la temperatura máxima
     presente en el estudio del clima en el volcán Antisana en 2012",
                  xlab = "Temperatua máxima (°C)",
                  ylab = "Porcentaje (%)",
                  names.arg = TDF_temperaturamax$MC[1:(nrow(TDF_temperaturamax)-1)],
                  ylim = c(0,100))
    axis(side = 1,
         at = post,
         labels = TDF_temperaturamax$MC[1:(nrow(TDF_temperaturamax)-1)],
         tck = -0.02)

    #Histograma porcentual local
    n <- as.numeric(nrow(TDF_temperaturamax))
    pos<-barplot(
      TDF_temperaturamax$`hi(%)`[1:(n-1)],
      space = 0,
      main = "Gráfica No. 4:Distribución de la temperatura máxima
     presente en el estudio del clima en el volcán Antisana en 2012",
      ylab = "Porcentaje (%)",
      xlab = "Temperatura máxima (°C)",
      names.arg = TDF_temperaturamax$MC[1:(n-1)],
      col = "skyblue"
    )
    axis(side = 1,
         at = pos,
         labels = TDF_temperaturamax$MC[1:(nrow(TDF_temperaturamax)-1)],
         tck = -0.04,   # controla la longitud de la rayita
         las = 1)       # rota las etiquetas si quieres verticales

    #Box plot
    Cajaozono<-boxplot(temperatura_máxima, horizontal = T,col = "magenta", border = "black",
                       main= "Gráfica No. 5: Distribución de la temperatura máxima
     presente en el estudio del clima en el volcán Antisana en 2012",
                       xlab=" Temperatura máxima (°C)")

    # Ojiva ascendente
    plot(Ls, Ni_asc, type = "b", main = "Gráfica N°6:Ojiva ascendente y descendente de la 
     distribución de la temperatura máxima",
         xlab = " Temperatura máxima (°C)",
         ylab = "Cantidad", pch = 19,col="skyblue", 
         ylim = c(0, max(c(Ni_asc, Ni_desc))))
    
    # Ojiva descendente
    lines(Li, Ni_desc, type = "b", col = "violet", pch = 19)  # agrega en rojo

    # Ojiva ascendente
    plot(Ls, Hi_asc,
         type = "b",
         main = " Gráfica N°7:Ojiva ascendete y descendete de la distribución
     de temperatura máxima",
         xlab = " Temperatura máxima(°C)",
         ylab = "Porcentaje %",
         col="green",
         pch = 19)
    
    # Ojiva descendente
    lines(Li, Hi_desc,
          type = "b",
          col = "blue",
          pch = 19)

    #INDICADORES
    
    #Indicadores de Tendencia Central
    
    # Mediana
    Me <- median(temperatura_máxima)
    Me
## [1] 15.51
    # Media
    X <- mean(temperatura_máxima)
    X
## [1] 15.74049
    # Moda
    Mo <- "[13,14]"
    Mo
## [1] "[13,14]"
    #Indicadores de Dispersión
    
    # Varianza
    var(temperatura_máxima)
## [1] 8.222732
    # Desviación estandar
    desv<-round(sd(temperatura_máxima), 2)
    
    # Coeficiente de variación 
    CV <- (sd(temperatura_máxima)/X)*100
    CV
## [1] 18.21754
    #Indicadores de Forma
    
    # Coeficiente de Asimetría
    library(e1071)
    As <- skewness(temperatura_máxima)
    As
## [1] 0.3873588
    # Curtosis
    K <- kurtosis(temperatura_máxima)
    K
## [1] -0.5581832
    Variable <- "Temperatura máxima"
    Rango <- "[10.32,23.79]"
    
    Tabla_indicadores <- data.frame(Variable,Rango,round(X,3),Me,Mo,round(desv,2),round(CV,2),round(As,2),round(K,2))
    colnames(Tabla_indicadores) <- c("Variable","Rango","X", "Me", "Mo","sd","CV","As","K")
    
    Tabla_indicadores %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 2*"),
        subtitle = md("** Indicadores estadísticos de la temperatura máxima estudio del clima en el volcán Antisana en 2012**")
      ) %>%
      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"
      )
Tabla Nro. 2
** Indicadores estadísticos de la temperatura máxima estudio del clima en el volcán Antisana en 2012**
Variable Rango X Me Mo sd CV As K
Temperatura máxima [10.32,23.79] 15.74 15.51 [13,14] 2.87 18.22 0.39 -0.56
Autor: Grupo 1
# 2.5.3 Temperatura Mínima 
    # Extracción de la variable
    temperatura_mínima<-datos$Min.Temperature
    # TDF simplificada
    Histograma_temperatura_mínima<-hist(temperatura_mínima,plot=FALSE)
    breaks <- Histograma_temperatura_mínima$breaks
    Li <- breaks[1:(length(breaks)-1)]
    Ls <- breaks[2:length(breaks)]
    MC<-(Li+Ls)/2
    ni<-Histograma_temperatura_mínima$counts
    n<-length(temperatura_mínima)
    hi <- (ni / n) * 100
    Ni_asc <- cumsum(ni) 
    Hi_asc <- cumsum(hi) 
    Ni_desc <- rev(cumsum(rev(ni)))
    Hi_desc <- rev(cumsum(rev(hi)))
    TDF_temperaturamin <- data.frame(
      Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
      MC = round(MC, 2),
      ni = ni,
      hi= round(hi, 2),
      Ni_ascendente = Ni_asc,
      Hi_ascendente = round(Hi_asc, 2),
      Ni_descendente = Ni_desc,
      Hi_descendente = round(Hi_desc, 2)
    )
    colnames(TDF_temperaturamin) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    totaless <- data.frame(
      Intervalo = "Totales",
      MC = "-",
      ni = sum(ni),           # suma total de ni
      hi = sum(hi),            # suma total de hi (%)
      Ni_ascendente = "-",
      Ni_descendente = "-",
      Hi_ascendente = "-",
      Hi_descendente = "-"
    )
    colnames(totaless) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    # Agregar al final de la tabla
    TDF_temperaturamin <- rbind(TDF_temperaturamin, totaless)
    TDF_temperaturamin %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 1*"),
        subtitle = md("**Distribucion de frecuencia simplificado de la temperatura mínima,estudio del clima volcán Antisana en 2012 **")
      ) %>%
      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"
      )
Tabla Nro. 1
**Distribucion de frecuencia simplificado de la temperatura mínima,estudio del clima volcán Antisana en 2012 **
Intervalo MC ni hi(%) Ni_asc Hi_asc (%) Ni_desc Hi_desc (%)
[2 - 3) 2.5 1 0.27 1 0.27 366 100
[3 - 4) 3.5 2 0.55 3 0.82 365 99.73
[4 - 5) 4.5 7 1.91 10 2.73 363 99.18
[5 - 6) 5.5 16 4.37 26 7.1 356 97.27
[6 - 7) 6.5 48 13.11 74 20.22 340 92.9
[7 - 8) 7.5 109 29.78 183 50 292 79.78
[8 - 9) 8.5 90 24.59 273 74.59 183 50
[9 - 10) 9.5 66 18.03 339 92.62 93 25.41
[10 - 11) 10.5 27 7.38 366 100 27 7.38
Totales - 366 100.00 - - - -
Autor: Grupo 1
    #Gráficas 
    #Histogramas local
    hist(temperatura_mínima, breaks = 10,
         main = "Gráfica N°1: Distribución de la temperatura mínima
     presente en el estudio del clima en el volcán Antisana en 2012",
         xlab = " Temperatura mínima (°C)",
         ylab = "Cantidad",
         ylim = c(0, max(ni)),
         col = "yellow",
         cex.main = 0.9,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_temperatura_mínima$breaks,
         labels = Histograma_temperatura_mínima$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma global
    hist(temperatura_mínima, breaks = 10,
         main = "Gráfica N°2:Distribución de la temperatura mínima
     presente en el estudio del clima en el volcán Antisana en 2012 ",
         xlab = "Temperatura mínima (°C)",
         ylab = "Cantidad",
         ylim = c(0, length(temperatura_mínima)),
         col = "orange",
         cex.main = 1,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_temperatura_mínima$breaks,
         labels = Histograma_temperatura_mínima$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma porcentual global
    TDF_temperaturamin$`hi (%)` <- as.numeric(TDF_temperaturamin$`hi(%)`)
    
    post<-barplot(TDF_temperaturamin$`hi(%)`[1:(nrow(TDF_temperaturamin)-1)],
                  space = 0,
                  col = "green",
                  main = "Gráfica N°3:Distribución de la temperatura mínima
     presente en el estudio del clima en el volcán Antisana en 2012",
                  xlab = "Temperatua mínima (°C)",
                  ylab = "Porcentaje (%)",
                  names.arg = TDF_temperaturamin$MC[1:(nrow(TDF_temperaturamin)-1)],
                  ylim = c(0,100))
    axis(side = 1,
         at = post,
         labels = TDF_temperaturamin$MC[1:(nrow(TDF_temperaturamin)-1)],
         tck = -0.02)

    #Histograma porcentual local
    n <- as.numeric(nrow(TDF_temperaturamin))
    pos<-barplot(
      TDF_temperaturamin$`hi(%)`[1:(n-1)],
      space = 0,
      main = "Gráfica No. 4:Distribución de la temperatura mínima
     presente en el estudio del clima en el volcán Antisana en 2012",
      ylab = "Porcentaje (%)",
      xlab = "Temperatura mínima (°C)",
      names.arg = TDF_temperaturamin$MC[1:(n-1)],
      col = "gray"
    )
    axis(side = 1,
         at = pos,
         labels = TDF_temperaturamin$MC[1:(nrow(TDF_temperaturamin)-1)],
         tck = -0.04,   # controla la longitud de la rayita
         las = 1)       # rota las etiquetas si quieres verticales

    #Box plot
    Cajaozono<-boxplot(temperatura_máxima, horizontal = T,col = "red", border = "black",
                       main= "Gráfica No. 5: Distribución de la temperatura mínima
     presente en el estudio del clima en el volcán Antisana en 2012",
                       xlab=" Temperatura mínima (°C)")

    # Ojiva ascendente
    plot(Ls, Ni_asc, type = "b", main = "Gráfica N°6:Ojiva ascendente y descendente de la 
     distribución de la temperatura mínima",
         xlab = " Temperatura mínima (°C)",
         ylab = "Cantidad", pch = 19,col="pink", 
         ylim = c(0, max(c(Ni_asc, Ni_desc))))
    
    # Ojiva descendente
    lines(Li, Ni_desc, type = "b", col = "black", pch = 19)  # agrega en rojo

    # Ojiva ascendente
    plot(Ls, Hi_asc,
         type = "b",
         main = " Gráfica N°7:Ojiva ascendete y descendete de la distribución
     de temperatura mínima",
         xlab = " Temperatura mínima(°C)",
         ylab = "Porcentaje %",
         col="skyblue",
         pch = 19)
    
    # Ojiva descendente
    lines(Li, Hi_desc,
          type = "b",
          col = "blue",
          pch = 19)

    #INDICADORES
    
    #Indicadores de Tendencia Central
    
    # Mediana
    Me <- median(temperatura_mínima)
    Me
## [1] 8.005
    # Media
    X <- mean(temperatura_mínima)
    X
## [1] 8.045847
    # Moda
    Mo <- "[7,8]"
    Mo
## [1] "[7,8]"
    #Indicadores de Dispersión
    
    # Varianza
    var(temperatura_mínima)
## [1] 1.888054
    # Desviación estandar
    desv<-round(sd(temperatura_mínima), 2)
    
    # Coeficiente de variación 
    CV <- (sd(temperatura_mínima)/X)*100
    CV
## [1] 17.07794
    #Indicadores de Forma
    
    # Coeficiente de Asimetría
    library(e1071)
    As <- skewness(temperatura_mínima)
    As
## [1] -0.4340818
    # Curtosis
    K <- kurtosis(temperatura_mínima)
    K
## [1] 0.5662281
    Variable <- "Temperatura mínima"
    Rango <- "[2.65,10.85]"
    
    Tabla_indicadores <- data.frame(Variable,Rango,round(X,3),Me,Mo,round(desv,2),round(CV,2),round(As,2),round(K,2))
    colnames(Tabla_indicadores) <- c("Variable","Rango","X", "Me", "Mo","sd","CV","As","K")
    
    Tabla_indicadores %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 2*"),
        subtitle = md("** Indicadores estadísticos de la temperatura mínima estudio del clima en el volcán Antisana en 2012**")
      ) %>%
      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"
      )
Tabla Nro. 2
** Indicadores estadísticos de la temperatura mínima estudio del clima en el volcán Antisana en 2012**
Variable Rango X Me Mo sd CV As K
Temperatura mínima [2.65,10.85] 8.046 8.005 [7,8] 1.37 17.08 -0.43 0.57
Autor: Grupo 1
    # 2.5.4 Precipitación
    # Extracción de la variable
    precipitación<-datos$Precipitation
    # TDF simplificada
    Histograma_precipitación<-hist(precipitación,plot=FALSE)
    breaks <- Histograma_precipitación$breaks
    Li <- breaks[1:(length(breaks)-1)]
    Ls <- breaks[2:length(breaks)]
    MC<-(Li+Ls)/2
    ni<-Histograma_precipitación$counts
    n<-length(precipitación)
    hi <- (ni / n) * 100
    Ni_asc <- cumsum(ni) 
    Hi_asc <- cumsum(hi) 
    Ni_desc <- rev(cumsum(rev(ni)))
    Hi_desc <- rev(cumsum(rev(hi)))
    TDF_precipitacion <- data.frame(
      Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
      MC = round(MC, 2),
      ni = ni,
      hi= round(hi, 2),
      Ni_ascendente = Ni_asc,
      Hi_ascendente = round(Hi_asc, 2),
      Ni_descendente = Ni_desc,
      Hi_descendente = round(Hi_desc, 2)
    )
    colnames(TDF_precipitacion) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    totaless <- data.frame(
      Intervalo = "Totales",
      MC = "-",
      ni = sum(ni),           # suma total de ni
      hi = sum(hi),            # suma total de hi (%)
      Ni_ascendente = "-",
      Ni_descendente = "-",
      Hi_ascendente = "-",
      Hi_descendente = "-"
    )
    colnames(totaless) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    # Agregar al final de la tabla
    TDF_precipitacion <- rbind(TDF_precipitacion, totaless)
    TDF_precipitacion %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 1*"),
        subtitle = md("**Distribucion de frecuencia simplificado de la precipitación, estudio del clima volcán Antisana en 2012 **")
      ) %>%
      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"
      )
Tabla Nro. 1
**Distribucion de frecuencia simplificado de la precipitación, estudio del clima volcán Antisana en 2012 **
Intervalo MC ni hi(%) Ni_asc Hi_asc (%) Ni_desc Hi_desc (%)
[0 - 10) 5 150 40.98 150 40.98 366 100
[10 - 20) 15 92 25.14 242 66.12 216 59.02
[20 - 30) 25 58 15.85 300 81.97 124 33.88
[30 - 40) 35 27 7.38 327 89.34 66 18.03
[40 - 50) 45 23 6.28 350 95.63 39 10.66
[50 - 60) 55 10 2.73 360 98.36 16 4.37
[60 - 70) 65 4 1.09 364 99.45 6 1.64
[70 - 80) 75 0 0.00 364 99.45 2 0.55
[80 - 90) 85 1 0.27 365 99.73 2 0.55
[90 - 100) 95 1 0.27 366 100 1 0.27
Totales - 366 100.00 - - - -
Autor: Grupo 1
    #Gráficas 
    #Histogramas local
    hist(precipitación, breaks = 11,
         main = "Gráfica N°1: Distribución de la precipitación
     presente en el estudio del clima en el volcán Antisana en 2012",
         xlab = " Precipitación (mm)",
         ylab = "Cantidad",
         ylim = c(0, max(ni)),
         col = "lightblue",
         cex.main = 0.9,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_precipitación$breaks,
         labels = Histograma_precipitación$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma global
    hist(precipitación, breaks = 11,
         main = "Gráfica N°2:Distribución de la precipitación
     presente en el estudio del clima en el volcán Antisana en 2012 ",
         xlab = "Precipitación (mm)",
         ylab = "Cantidad",
         ylim = c(0, length(precipitación)),
         col = "lightblue",
         cex.main = 1,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_precipitación$breaks,
         labels = Histograma_precipitación$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma porcentual global
    TDF_precipitacion$`hi (%)` <- as.numeric(TDF_precipitacion$`hi(%)`)
    
    post<-barplot(TDF_precipitacion$`hi(%)`[1:(nrow(TDF_precipitacion)-1)],
                  space = 0,
                  col = "lightblue",
                  main = "Gráfica N°3:Distribución de la precipitación
     presente en el estudio del clima en el volcán Antisana en 2012",
                  xlab = "Precipitación (mm)",
                  ylab = "Porcentaje (%)",
                  names.arg = TDF_precipitacion$MC[1:(nrow(TDF_precipitacion)-1)],
                  ylim = c(0,100))
    axis(side = 1,
         at = post,
         labels = TDF_precipitacion$MC[1:(nrow(TDF_precipitacion)-1)],
         tck = -0.02)

    #Histograma porcentual local
    n <- as.numeric(nrow(TDF_precipitacion))
    pos<-barplot(
      TDF_precipitacion$`hi(%)`[1:(n-1)],
      space = 0,
      main = "Gráfica No. 4:Distribución de la precipitación
     presente en el estudio del clima en el volcán Antisana en 2012",
      ylab = "Porcentaje (%)",
      xlab = "Precipitación (mm)",
      names.arg = TDF_precipitacion$MC[1:(n-1)],
      col = "lightblue"
    )
    axis(side = 1,
         at = pos,
         labels = TDF_precipitacion$MC[1:(nrow(TDF_precipitacion)-1)],
         tck = -0.04,   # controla la longitud de la rayita
         las = 1)       # rota las etiquetas si quieres verticales

    #Box plot
    Cajaozono<-boxplot(precipitación, horizontal = T,col = "turquoise", border = "black",
                       main= "Gráfica No. 5: Distribución de la precipitación
     presente en el estudio del clima en el volcán Antisana en 2012",
                       xlab=" Precipitación (mm)")

    # Ojiva ascendente
    plot(Ls, Ni_asc, type = "b", main = "Gráfica N°6:Ojiva ascendente y descendente de la 
     distribución de la precipitación",
         xlab = " Precipitación (mm)",
         ylab = "Cantidad", pch = 19,col="red", 
         ylim = c(0, max(c(Ni_asc, Ni_desc))))
    
    # Ojiva descendente
    lines(Li, Ni_desc, type = "b", col = "blue", pch = 19)  # agrega en rojo

    # Ojiva ascendente
    plot(Ls, Hi_asc,
         type = "b",
         main = " Gráfica N°7:Ojiva ascendente y descendente de la distribución
     de precipitación",
         xlab = " Precipitación (mm)",
         ylab = "Porcentaje %",
         col="red",
         pch = 19)
    
    # Ojiva descendente
    lines(Li, Hi_desc,
          type = "b",
          col = "blue",
          pch = 19)

    #INDICADORES
    
    #Indicadores de Tendencia Central
    
    # Mediana
    Me <- median(precipitación)
    Me
## [1] 12.94
    # Media
    X <- mean(precipitación)
    X
## [1] 17.10478
    # Moda
    Mo <- "[0,10]"
    Mo
## [1] "[0,10]"
    #Indicadores de Dispersión
    
    # Varianza
    var(precipitación)
## [1] 259.6987
    # Desviación estandar
    desv<-round(sd(precipitación), 2)
    
    # Coeficiente de variación 
    CV <- (sd(precipitación)/X)*100
    CV
## [1] 94.21441
    #Indicadores de Forma
    
    # Coeficiente de Asimetría
    library(e1071)
    As <- skewness(precipitación)
    As
## [1] 1.295084
    # Curtosis
    K <- kurtosis(precipitación)
    K
## [1] 1.951113
    Variable <- "Precipitación"
    Rango <- "[0.01,94.72]"
    
    Tabla_indicadores <- data.frame(Variable,Rango,round(X,3),Me,Mo,round(desv,2),round(CV,2),round(As,2),round(K,2))
    colnames(Tabla_indicadores) <- c("Variable","Rango","X", "Me", "Mo","sd","CV","As","K")
    
    Tabla_indicadores %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 2*"),
        subtitle = md("** Indicadores estadísticos de la precipitación estudio del clima en el volcán Antisana en 2012**")
      ) %>%
      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"
      )
Tabla Nro. 2
** Indicadores estadísticos de la precipitación estudio del clima en el volcán Antisana en 2012**
Variable Rango X Me Mo sd CV As K
Precipitación [0.01,94.72] 17.105 12.94 [0,10] 16.12 94.21 1.3 1.95
Autor: Grupo 1
# 2.5.5 Viento 
    # Extracción de la variable
    viento<-datos$Wind
    # TDF simplificada
    Histograma_viento<-hist(viento,plot=FALSE)
    breaks <- Histograma_viento$breaks
    Li <- breaks[1:(length(breaks)-1)]
    Ls <- breaks[2:length(breaks)]
    MC<-(Li+Ls)/2
    ni<-Histograma_viento$counts
    n<-length(viento)
    hi <- (ni / n) * 100
    Ni_asc <- cumsum(ni) 
    Hi_asc <- cumsum(hi) 
    Ni_desc <- rev(cumsum(rev(ni)))
    Hi_desc <- rev(cumsum(rev(hi)))
    TDF_viento <- data.frame(
      Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
      MC = round(MC, 2),
      ni = ni,
      hi= round(hi, 2),
      Ni_ascendente = Ni_asc,
      Hi_ascendente = round(Hi_asc, 2),
      Ni_descendente = Ni_desc,
      Hi_descendente = round(Hi_desc, 2)
    )
    colnames(TDF_viento) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    totaless <- data.frame(
      Intervalo = "Totales",
      MC = "-",
      ni = sum(ni),           # suma total de ni
      hi = sum(hi),            # suma total de hi (%)
      Ni_ascendente = "-",
      Ni_descendente = "-",
      Hi_ascendente = "-",
      Hi_descendente = "-"
    )
    colnames(totaless) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    # Agregar al final de la tabla
    TDF_viento <- rbind(TDF_viento, totaless)
    TDF_viento %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 1*"),
        subtitle = md("**Distribucion de frecuencia simplificado del viento, estudio del clima volcán Antisana en 2012 **")
      ) %>%
      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"
      )
Tabla Nro. 1
**Distribucion de frecuencia simplificado del viento, estudio del clima volcán Antisana en 2012 **
Intervalo MC ni hi(%) Ni_asc Hi_asc (%) Ni_desc Hi_desc (%)
[0.4 - 0.6) 0.5 1 0.27 1 0.27 366 100
[0.6 - 0.8) 0.7 1 0.27 2 0.55 365 99.73
[0.8 - 1) 0.9 10 2.73 12 3.28 364 99.45
[1 - 1.2) 1.1 30 8.20 42 11.48 354 96.72
[1.2 - 1.4) 1.3 45 12.30 87 23.77 324 88.52
[1.4 - 1.6) 1.5 58 15.85 145 39.62 279 76.23
[1.6 - 1.8) 1.7 56 15.30 201 54.92 221 60.38
[1.8 - 2) 1.9 48 13.11 249 68.03 165 45.08
[2 - 2.2) 2.1 46 12.57 295 80.6 117 31.97
[2.2 - 2.4) 2.3 35 9.56 330 90.16 71 19.4
[2.4 - 2.6) 2.5 27 7.38 357 97.54 36 9.84
[2.6 - 2.8) 2.7 7 1.91 364 99.45 9 2.46
[2.8 - 3) 2.9 2 0.55 366 100 2 0.55
Totales - 366 100.00 - - - -
Autor: Grupo 1
    #Gráficas 
    #Histogramas local
    hist(viento, breaks = 14,
         main = "Gráfica N°1: Distribución del viento
     presente en el estudio del clima en el volcán Antisana en 2012",
         xlab = " Viento (m/s)",
         ylab = "Cantidad",
         ylim = c(0, max(ni)),
         col = "turquoise",
         cex.main = 0.9,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_viento$breaks,
         labels = Histograma_viento$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma global
    hist(viento, breaks = 14,
         main = "Gráfica N°2:Distribución del viento
     presente en el estudio del clima en el volcán Antisana en 2012 ",
         xlab = "Viento (m/s)",
         ylab = "Cantidad",
         ylim = c(0, length(viento)),
         col = "turquoise",
         cex.main = 1,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_viento$breaks,
         labels = Histograma_viento$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma porcentual global
    TDF_viento$`hi (%)` <- as.numeric(TDF_viento$`hi(%)`)
    
    post<-barplot(TDF_viento$`hi(%)`[1:(nrow(TDF_viento)-1)],
                  space = 0,
                  col = "turquoise",
                  main = "Gráfica N°3:Distribución del viento
     presente en el estudio del clima en el volcán Antisana en 2012",
                  xlab = " Viento (m/s)",
                  ylab = "Porcentaje (%)",
                  names.arg = TDF_viento$MC[1:(nrow(TDF_viento)-1)],
                  ylim = c(0,100))
    axis(side = 1,
         at = post,
         labels = TDF_viento$MC[1:(nrow(TDF_viento)-1)],
         tck = -0.02)

    #Histograma porcentual local
    n <- as.numeric(nrow(TDF_viento))
    pos<-barplot(
      TDF_viento$`hi(%)`[1:(n-1)],
      space = 0,
      main = "Gráfica No. 4:Distribución del viento
     presente en el estudio del clima en el volcán Antisana en 2012",
      ylab = "Porcentaje (%)",
      xlab = " Viento (m/s)",
      names.arg = TDF_viento$MC[1:(n-1)],
      col = "turquoise"
    )
    axis(side = 1,
         at = pos,
         labels = TDF_viento$MC[1:(nrow(TDF_viento)-1)],
         tck = -0.04,   # controla la longitud de la rayita
         las = 1)       # rota las etiquetas si quieres verticales

    #Box plot
    Cajaozono<-boxplot(precipitación, horizontal = T,col = "lightgreen", border = "black",
                       main= "Gráfica No. 5: Distribución del viento
     presente en el estudio del clima en el volcán Antisana en 2012",
                       xlab=" Viento (m/s)")

    # Ojiva ascendente
    plot(Ls, Ni_asc, type = "b", main = "Gráfica N°6:Ojiva ascendente y descendente de la 
     distribución del viento",
         xlab = " Viento (m/s)",
         ylab = "Cantidad", pch = 19,col="red", 
         ylim = c(0, max(c(Ni_asc, Ni_desc))))
    
    # Ojiva descendente
    lines(Li, Ni_desc, type = "b", col = "blue", pch = 19)  # agrega en rojo

    # Ojiva ascendente
    plot(Ls, Hi_asc,
         type = "b",
         main = " Gráfica N°7:Ojiva ascendente y descendente de la distribución
     del viento",
         xlab = " Viento (m/s)",
         ylab = "Porcentaje %",
         col="red",
         pch = 19)
    
    # Ojiva descendente
    lines(Li, Hi_desc,
          type = "b",
          col = "blue",
          pch = 19)

    #INDICADORES
    
    #Indicadores de Tendencia Central
    
    # Mediana
    Me <- median(viento)
    Me
## [1] 1.75
    # Media
    X <- mean(viento)
    X
## [1] 1.767787
    # Moda
    Mo <- "[1.4,1.6]"
    Mo
## [1] "[1.4,1.6]"
    #Indicadores de Dispersión
    
    # Varianza
    var(viento)
## [1] 0.2077148
    # Desviación estandar
    desv<-round(sd(viento), 2)
    
    # Coeficiente de variación 
    CV <- (sd(viento)/X)*100
    CV
## [1] 25.78124
    #Indicadores de Forma
    
    # Coeficiente de Asimetría
    library(e1071)
    As <- skewness(viento)
    As
## [1] 0.1103783
    # Curtosis
    K <- kurtosis(viento)
    K
## [1] -0.719341
    Variable <- "Viento"
    Rango <- "[0.59,2.99]"
    
    Tabla_indicadores <- data.frame(Variable,Rango,round(X,3),Me,Mo,round(desv,2),round(CV,2),round(As,2),round(K,2))
    colnames(Tabla_indicadores) <- c("Variable","Rango","X", "Me", "Mo","sd","CV","As","K")
    
    Tabla_indicadores %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 2*"),
        subtitle = md("** Indicadores estadísticos del viento en el estudio del clima en el volcán Antisana en 2012**")
      ) %>%
      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"
      )
Tabla Nro. 2
** Indicadores estadísticos del viento en el estudio del clima en el volcán Antisana en 2012**
Variable Rango X Me Mo sd CV As K
Viento [0.59,2.99] 1.768 1.75 [1.4,1.6] 0.46 25.78 0.11 -0.72
Autor: Grupo 1
# 2.5.6 Humedad
    # Extracción de la variable
    humedad<-datos$Relative.Humidity
    # TDF simplificada
    Histograma_humedad<-hist(humedad,plot=FALSE)
    breaks <- Histograma_humedad$breaks
    Li <- breaks[1:(length(breaks)-1)]
    Ls <- breaks[2:length(breaks)]
    MC<-(Li+Ls)/2
    ni<-Histograma_humedad$counts
    n<-length(humedad)
    hi <- (ni / n) * 100
    Ni_asc <- cumsum(ni) 
    Hi_asc <- cumsum(hi) 
    Ni_desc <- rev(cumsum(rev(ni)))
    Hi_desc <- rev(cumsum(rev(hi)))
    TDF_humedad <- data.frame(
      Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
      MC = round(MC, 2),
      ni = ni,
      hi= round(hi, 2),
      Ni_ascendente = Ni_asc,
      Hi_ascendente = round(Hi_asc, 2),
      Ni_descendente = Ni_desc,
      Hi_descendente = round(Hi_desc, 2)
    )
    colnames(TDF_humedad) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    totaless <- data.frame(
      Intervalo = "Totales",
      MC = "-",
      ni = sum(ni),           # suma total de ni
      hi = sum(hi),            # suma total de hi (%)
      Ni_ascendente = "-",
      Ni_descendente = "-",
      Hi_ascendente = "-",
      Hi_descendente = "-"
    )
    colnames(totaless) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    # Agregar al final de la tabla
    TDF_humedad <- rbind(TDF_humedad, totaless)
    TDF_humedad %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 1*"),
        subtitle = md("**Distribucion de frecuencia simplificado de la humedad, estudio del clima volcán Antisana en 2012 **")
      ) %>%
      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"
      )
Tabla Nro. 1
**Distribucion de frecuencia simplificado de la humedad, estudio del clima volcán Antisana en 2012 **
Intervalo MC ni hi(%) Ni_asc Hi_asc (%) Ni_desc Hi_desc (%)
[0.55 - 0.6) 0.58 2 0.55 2 0.55 366 100
[0.6 - 0.65) 0.62 15 4.10 17 4.64 364 99.45
[0.65 - 0.7) 0.68 18 4.92 35 9.56 349 95.36
[0.7 - 0.75) 0.73 21 5.74 56 15.3 331 90.44
[0.75 - 0.8) 0.78 18 4.92 74 20.22 310 84.7
[0.8 - 0.85) 0.83 25 6.83 99 27.05 292 79.78
[0.85 - 0.9) 0.88 41 11.20 140 38.25 267 72.95
[0.9 - 0.95) 0.92 59 16.12 199 54.37 226 61.75
[0.95 - 1) 0.98 167 45.63 366 100 167 45.63
Totales - 366 100.00 - - - -
Autor: Grupo 1
    #Gráficas 
    #Histogramas local
    hist(humedad, breaks = 10,
         main = "Gráfica N°1: Distribución de la humedad
     presente en el estudio del clima en el volcán Antisana en 2012",
         xlab = " Humedad (%)",
         ylab = "Cantidad",
         ylim = c(0, max(ni)),
         col = "green",
         cex.main = 0.9,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_humedad$breaks,
         labels = Histograma_humedad$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma global
    hist(humedad, breaks = 10,
         main = "Gráfica N°2:Distribución de la humedad
     presente en el estudio del clima en el volcán Antisana en 2012 ",
         xlab = " Humedad (%)",
         ylab = "Cantidad",
         ylim = c(0, length(humedad)),
         col = "green",
         cex.main = 1,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_humedad$breaks,
         labels = Histograma_humedad$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma porcentual global
    TDF_humedad$`hi (%)` <- as.numeric(TDF_humedad$`hi(%)`)
    
    post<-barplot(TDF_humedad$`hi(%)`[1:(nrow(TDF_humedad)-1)],
                  space = 0,
                  col = "green",
                  main = "Gráfica N°3:Distribución de la humedad
     presente en el estudio del clima en el volcán Antisana en 2012",
                  xlab = " Humedad (%)",
                  ylab = "Porcentaje (%)",
                  names.arg = TDF_humedad$MC[1:(nrow(TDF_humedad)-1)],
                  ylim = c(0,100))
    axis(side = 1,
         at = post,
         labels = TDF_humedad$MC[1:(nrow(TDF_humedad)-1)],
         tck = -0.02)

    #Histograma porcentual local
    n <- as.numeric(nrow(TDF_humedad))
    pos<-barplot(
      TDF_humedad$`hi(%)`[1:(n-1)],
      space = 0,
      main = "Gráfica No. 4:Distribución de la humedad
     presente en el estudio del clima en el volcán Antisana en 2012",
      ylab = "Porcentaje (%)",
      xlab = " Humedad (%)",
      names.arg = TDF_humedad$MC[1:(n-1)],
      col = "green"
    )
    axis(side = 1,
         at = pos,
         labels = TDF_humedad$MC[1:(nrow(TDF_humedad)-1)],
         tck = -0.04,   # controla la longitud de la rayita
         las = 1)       # rota las etiquetas si quieres verticales

    #Box plot
    Cajahumedad<-boxplot(humedad, horizontal = T,col = "blue", border = "black",
                         main= "Gráfica No. 5: Distribución de la humedad
     presente en el estudio del clima en el volcán Antisana en 2012",
                         xlab=" Humedad (%)")

    # Ojiva ascendente
    plot(Ls, Ni_asc, type = "b", main = "Gráfica N°6:Ojiva ascendente y descendente de la 
     distribución de la humedad",
         xlab = " Humedad (%)",
         ylab = "Cantidad", pch = 19,col="red", 
         ylim = c(0, max(c(Ni_asc, Ni_desc))))
    
    # Ojiva descendente
    lines(Li, Ni_desc, type = "b", col = "blue", pch = 19)  # agrega en rojo

    # Ojiva ascendente
    plot(Ls, Hi_asc,
         type = "b",
         main = " Gráfica N°7:Ojiva ascendente y descendente de la distribución
     de la humedad",
         xlab = " Humedad (%)",
         ylab = "Porcentaje %",
         col="red",
         pch = 19)
    
    # Ojiva descendente
    lines(Li, Hi_desc,
          type = "b",
          col = "blue",
          pch = 19)

    #INDICADORES
    
    #Indicadores de Tendencia Central
    
    # Mediana
    Me <- median(humedad)
    Me
## [1] 0.94
    # Media
    X <- mean(humedad)
    X
## [1] 0.8950273
    # Moda
    Mo <- "[0.95,1]"
    Mo
## [1] "[0.95,1]"
    #Indicadores de Dispersión
    
    # Varianza
    var(humedad)
## [1] 0.0118026
    # Desviación estandar
    desv<-round(sd(humedad), 2)
    
    # Coeficiente de variación 
    CV <- (sd(humedad)/X)*100
    CV
## [1] 12.13815
    #Indicadores de Forma
    
    # Coeficiente de Asimetría
    library(e1071)
    As <- skewness(humedad)
    As
## [1] -1.177056
    # Curtosis
    K <- kurtosis(humedad)
    K
## [1] 0.2001903
    Variable <- "Humedad"
    Rango <- "[0.56,0.99]"
    
    Tabla_indicadores <- data.frame(Variable,Rango,round(X,3),Me,Mo,round(desv,2),round(CV,2),round(As,2),round(K,2))
    colnames(Tabla_indicadores) <- c("Variable","Rango","X", "Me", "Mo","sd","CV","As","K")
    
    Tabla_indicadores %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 2*"),
        subtitle = md("** Indicadores estadísticos de la humedad en el estudio del clima en el volcán Antisana en 2012**")
      ) %>%
      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"
      )
Tabla Nro. 2
** Indicadores estadísticos de la humedad en el estudio del clima en el volcán Antisana en 2012**
Variable Rango X Me Mo sd CV As K
Humedad [0.56,0.99] 0.895 0.94 [0.95,1] 0.11 12.14 -1.18 0.2
Autor: Grupo 1
# 2.5.7 Radiación 
    # Extracción de la variable
    radiación_solar<-datos$Solar
    # TDF simplificada
    Histograma_radiacion<-hist(radiación_solar,plot=FALSE)
    breaks <- Histograma_radiacion$breaks
    Li <- breaks[1:(length(breaks)-1)]
    Ls <- breaks[2:length(breaks)]
    MC<-(Li+Ls)/2
    ni<-Histograma_radiacion$counts
    n<-length(radiación_solar)
    hi <- (ni / n) * 100
    Ni_asc <- cumsum(ni) 
    Hi_asc <- cumsum(hi) 
    Ni_desc <- rev(cumsum(rev(ni)))
    Hi_desc <- rev(cumsum(rev(hi)))
    TDF_radiación <- data.frame(
      Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
      MC = round(MC, 2),
      ni = ni,
      hi= round(hi, 2),
      Ni_ascendente = Ni_asc,
      Hi_ascendente = round(Hi_asc, 2),
      Ni_descendente = Ni_desc,
      Hi_descendente = round(Hi_desc, 2)
    )
    colnames(TDF_radiación) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    totaless <- data.frame(
      Intervalo = "Totales",
      MC = "-",
      ni = sum(ni),           # suma total de ni
      hi = sum(hi),            # suma total de hi (%)
      Ni_ascendente = "-",
      Ni_descendente = "-",
      Hi_ascendente = "-",
      Hi_descendente = "-"
    )
    colnames(totaless) <- c(
      "Intervalo",
      "MC",
      "ni",
      "hi(%)",
      "Ni_asc",
      "Hi_asc (%)",
      "Ni_desc",
      "Hi_desc (%)"
    )
    # Agregar al final de la tabla
    TDF_radiación <- rbind(TDF_radiación, totaless)
    TDF_radiación %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 1*"),
        subtitle = md("**Distribucion de frecuencia simplificado de la radiación solar, estudio del clima volcán Antisana en 2012 **")
      ) %>%
      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"
      )
Tabla Nro. 1
**Distribucion de frecuencia simplificado de la radiación solar, estudio del clima volcán Antisana en 2012 **
Intervalo MC ni hi(%) Ni_asc Hi_asc (%) Ni_desc Hi_desc (%)
[0 - 5) 2.5 51 13.93 51 13.93 366 100
[5 - 10) 7.5 86 23.50 137 37.43 315 86.07
[10 - 15) 12.5 79 21.58 216 59.02 229 62.57
[15 - 20) 17.5 33 9.02 249 68.03 150 40.98
[20 - 25) 22.5 57 15.57 306 83.61 117 31.97
[25 - 30) 27.5 58 15.85 364 99.45 60 16.39
[30 - 35) 32.5 2 0.55 366 100 2 0.55
Totales - 366 100.00 - - - -
Autor: Grupo 1
    #Gráficas 
    #Histogramas local
    hist(radiación_solar, breaks = 8,
         main = "Gráfica N°1: Distribución de la radiación solar
     presente en el estudio del clima en el volcán Antisana en 2012",
         xlab = " Radiación solar (J/m2)",
         ylab = "Cantidad",
         ylim = c(0, max(ni)),
         col = "salmon",
         cex.main = 0.9,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_radiacion$breaks,
         labels = Histograma_radiacion$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma global
    hist(radiación_solar, breaks = 8,
         main = "Gráfica N°2:Distribución de la radiación solar
     presente en el estudio del clima en el volcán Antisana en 2012 ",
         xlab = " Radiación solar (J/m2)",
         ylab = "Cantidad",
         ylim = c(0, length(radiación_solar)),
         col = "salmon",
         cex.main = 1,
         cex.lab = 1,
         cex.axis = 0.9,
         xaxt = "n")
    axis(1, at = Histograma_radiacion$breaks,
         labels = Histograma_radiacion$breaks, las = 1,
         cex.axis = 0.9)

    #Histograma porcentual global
    TDF_radiación$`hi (%)` <- as.numeric(TDF_radiación$`hi(%)`)
    
    post<-barplot(TDF_radiación$`hi(%)`[1:(nrow(TDF_radiación)-1)],
                  space = 0,
                  col = "salmon",
                  main = "Gráfica N°3:Distribución de la radiación solar
     presente en el estudio del clima en el volcán Antisana en 2012",
                  xlab = " Radiación solar (J/m2)",
                  ylab = "Porcentaje (%)",
                  names.arg = TDF_radiación$MC[1:(nrow(TDF_radiación)-1)],
                  ylim = c(0,100))
    axis(side = 1,
         at = post,
         labels = TDF_radiación$MC[1:(nrow(TDF_radiación)-1)],
         tck = -0.02)

    #Histograma porcentual local
    n <- as.numeric(nrow(TDF_radiación))
    pos<-barplot(
      TDF_radiación$`hi(%)`[1:(n-1)],
      space = 0,
      main = "Gráfica No. 4:Distribución de la radiación solar
     presente en el estudio del clima en el volcán Antisana en 2012",
      ylab = "Porcentaje (%)",
      xlab = " Radiación solar (J/m2)",
      names.arg = TDF_radiación$MC[1:(n-1)],
      col = "salmon"
    )
    axis(side = 1,
         at = pos,
         labels = TDF_radiación$MC[1:(nrow(TDF_radiación)-1)],
         tck = -0.04,   # controla la longitud de la rayita
         las = 1)       # rota las etiquetas si quieres verticales

    #Box plot
    Cajahumedad<-boxplot(radiación_solar, horizontal = T,col = "brown", border = "black",
                         main= "Gráfica No. 5: Distribución de la radiación solar
     presente en el estudio del clima en el volcán Antisana en 2012",
                         xlab=" Radiación solar (J/m2)")

    # Ojiva ascendente
    plot(Ls, Ni_asc, type = "b", main = "Gráfica N°6:Ojiva ascendente y descendente de la 
     distribución de la radiación solar",
         xlab = " Radiación solar (J/m2)",
         ylab = "Cantidad", pch = 19,col="red", 
         ylim = c(0, max(c(Ni_asc, Ni_desc))))
    
    # Ojiva descendente
    lines(Li, Ni_desc, type = "b", col = "blue", pch = 19)  # agrega en rojo

    # Ojiva ascendente
    plot(Ls, Hi_asc,
         type = "b",
         main = " Gráfica N°7:Ojiva ascendente y descendente de la distribución
     de la radiación solar",
         xlab = " Radiación solar (J/m2)",
         ylab = "Porcentaje %",
         col="red",
         pch = 19)
    
    # Ojiva descendente
    lines(Li, Hi_desc,
          type = "b",
          col = "blue",
          pch = 19)

    #INDICADORES
    
    #Indicadores de Tendencia Central
    
    # Mediana
    Me <- median(radiación_solar)
    Me
## [1] 12.655
    # Media
    X <- mean(radiación_solar)
    X
## [1] 14.43609
    # Moda
    Mo <- "[5,10]"
    Mo
## [1] "[5,10]"
    #Indicadores de Dispersión
    
    # Varianza
    var(radiación_solar)
## [1] 69.3595
    # Desviación estandar
    desv<-round(sd(radiación_solar), 2)
    
    # Coeficiente de variación 
    CV <- (sd(radiación_solar)/X)*100
    CV
## [1] 57.69037
    #Indicadores de Forma
    
    # Coeficiente de Asimetría
    library(e1071)
    As <- skewness(radiación_solar)
    As
## [1] 0.2971722
    # Curtosis
    K <- kurtosis(radiación_solar)
    K
## [1] -1.244028
    Variable <- "Radiación solar"
    Rango <- "[1.26,30.27]"
    
    Tabla_indicadores <- data.frame(Variable,Rango,round(X,3),Me,Mo,round(desv,2),round(CV,2),round(As,2),round(K,2))
    colnames(Tabla_indicadores) <- c("Variable","Rango","X", "Me", "Mo","sd","CV","As","K")
    
    Tabla_indicadores %>%
      gt() %>%
      tab_header(
        title = md("*Tabla Nro. 2*"),
        subtitle = md("** Indicadores estadísticos de la radiación solar en el estudio del clima en el volcán Antisana en 2012**")
      ) %>%
      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"
      )
Tabla Nro. 2
** Indicadores estadísticos de la radiación solar en el estudio del clima en el volcán Antisana en 2012**
Variable Rango X Me Mo sd CV As K
Radiación solar [1.26,30.27] 14.436 12.655 [5,10] 8.33 57.69 0.3 -1.24
Autor: Grupo 1

2.6 Conclusiones

2.6.1 Meses La variable meses presenta variación desde enero hasta diciembre, concentrándose principalmente alrededor de junio y julio, lo que evidencia que la mayor parte de los registros analizados corresponde a estos meses.

2.6.2 Temperatura máxima La variable temperatura máxima, expresada en (°C), oscila entre 10.32 y 23.79, con un valor medio cercano a 15.74 y una desviación estándar de 2.87 (°C), lo que indica una baja variabilidad. Los datos se concentran ligeramente en la zona inferior de la distribución, sin presencia de valores atípicos. Estas condiciones resultan favorables para el clima del Antisana, ya que reflejan una estabilidad térmica sin cambios bruscos ni episodios extremos de calor.

2.6.3 Temperatura mínima La variable temperatura mínima, medida en (°C), varía entre 2.65 y 10.85, con un promedio aproximado de 8.046 y una desviación estándar de 1.37 (°C), evidenciando poca dispersión. Los valores se agrupan de forma moderadamente fuerte en el rango superior, sin detectarse valores atípicos. Esto es beneficioso para el clima del Antisana, pues las temperaturas se mantienen relativamente constantes.

2.6.4 Precipitación La variable precipitación, expresada en (mm), fluctúa entre 0.01 y 94.72, con una media cercana a 17.105 y una desviación estándar de 16.12 (mm), lo que refleja una alta variabilidad. Los datos se concentran principalmente en la zona media-baja de la distribución, observándose la presencia de 10 valores atípicos. Estas condiciones resultan moderadamente favorables para el clima del sector.

2.6.5 Viento La variable viento, medida en (m/s), presenta valores entre 0.59 y 2.99, con una media aproximada de 1.768 y una desviación estándar de 0.46 (m/s), lo que indica una baja variabilidad. Los datos se agrupan de manera débil en la zona media, con la presencia de 10 valores atípicos. Este comportamiento es favorable, ya que un régimen de viento estable y moderado contribuye al equilibrio de los ecosistemas y a la regulación climática local.

2.6.6 Humedad La variable humedad, expresada en (%), oscila entre 0.56 y 0.99, con un valor promedio cercano a 0.895 y una desviación estándar de 0.11 (%), lo que sugiere poca variabilidad. Los datos se concentran fuertemente en los rangos medio-altos, con la presencia de 5 valores atípicos. Este patrón es positivo para el clima, ya que una humedad estable y elevada favorece la conservación de los ecosistemas de páramo.

2.6.7 Radiación solar La variable radiación solar, medida en (J/m²), varía entre 1.26 y 30.27, con un promedio aproximado de 14.43 y una desviación estándar de 8.33 (J/m²), evidenciando una variabilidad considerable. Los valores se distribuyen débilmente en la parte baja de la variable, con la presencia de 10 valores atípicos. Estas condiciones resultan adecuadas para el clima, ya que la variabilidad refleja la dinámica natural de la radiación solar en la región, con alternancia entre días de baja y alta intensidad.

3. Estadistica Inferencial

#3 Estadística Inferencial
#3.1 Modelo Uniforme
#Librerias
library(lubridate)
library(gt)
library(dplyr)
library(knitr)
library(kableExtra)
## 
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows
#Carga de datos
getwd()
## [1] "/cloud/project"
setwd("/cloud/project")
datos<- read.csv("weatherdataANTISANA.csv",header = TRUE, sep = ",", dec = ".")
# Extracción de la variable y justificación
#Justificación: La variable Meses se clasifica como cualitativa ordinal porque representa
#categorías no numéricas que describen una característica y al mismo tiempo, poseen un orden lógico
# o jerárquico entre ellas
# Convertir a fecha
datos$Date <- as.Date(datos$Date, format = "%d/%m/%Y")

# Extraer mes numérico (366 valores)
datos$mes <- month(datos$Date)

# Nombres de meses (12 valores)
meses_12 <- c("enero", "febrero", "marzo", "abril", "mayo", "junio",
              "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre")

# Mes en palabras (366 valores)
datos$mes_nombre <- meses_12[datos$mes]
meses <- meses_12[datos$mes]
orden_meses <- c("enero", "febrero", "marzo", "abril", "mayo", "junio",
                 "julio", "agosto", "septiembre", "octubre", "noviembre", "diciembre")
meses <- factor(meses, levels = orden_meses, ordered = TRUE)

# 2.TDF variable meses
TDF_meses<-data.frame(table(meses))
ni <- TDF_meses$Freq
hi <- round((ni / sum(ni)) * 100, 2)
meses <- TDF_meses$meses
TDF_meses <- data.frame(meses, ni, hi)
Summary <- data.frame(meses = "TOTAL", ni = sum(ni),hi = 100)
TDF_meses<- rbind(TDF_meses,Summary)
colnames(TDF_meses) <- c("Meses", "ni", "hi(%)")

kable(TDF_meses, align = 'c', caption = "Tabla de Distribucion de frecuencia de
      los meses en el estudios del clima en el volcán Antisana en 2012  ") %>%
  kable_styling(full_width = FALSE, position = "center", bootstrap_options = c("striped", "hover", "condensed"))
Tabla de Distribucion de frecuencia de los meses en el estudios del clima en el volcán Antisana en 2012
Meses ni hi(%)
enero 31 8.47
febrero 29 7.92
marzo 31 8.47
abril 30 8.20
mayo 31 8.47
junio 30 8.20
julio 31 8.47
agosto 31 8.47
septiembre 30 8.20
octubre 31 8.47
noviembre 30 8.20
diciembre 31 8.47
TOTAL 366 100.00
#Mapeo de la variable 
TDF_meses <- data.frame(table(datos$mes))
ni <- TDF_meses$Freq
hi <- round((ni / sum(ni)) * 100, 2)
TDF_meses$Meses <- TDF_meses$Var1
TDF_meses$Var1 <- NULL
TDF_meses <- data.frame(meses, ni, hi)
Summary <- data.frame(meses = "TOTAL", ni = sum(ni),hi = 100)
TDF_meses<- rbind(TDF_meses,Summary)
colnames(TDF_meses) <- c("Mapeo variable", "ni", "hi(%)")
# Separar fila TOTAL
total <- TDF_meses[TDF_meses$`Mapeo variable` == "TOTAL", ]
TDF_meses <- TDF_meses[TDF_meses$`Mapeo variable` != "TOTAL", ]

# Mapeo meses a números
mapa_meses <- c(
  "enero" = 1, "febrero" = 2, "marzo" = 3, "abril" = 4,
  "mayo" = 5, "junio" = 6, "julio" = 7, "agosto" = 8,
  "septiembre" = 9, "octubre" = 10, "noviembre" = 11, "diciembre" = 12
)

# Reemplazar nombres por números
TDF_meses$`Mapeo variable` <- mapa_meses[as.character(TDF_meses$`Mapeo variable`)]

# Ordenar por mes
TDF_meses <- TDF_meses[order(TDF_meses$`Mapeo variable`), ]

# Quitar columna texto
TDF_meses <- TDF_meses[, c("Mapeo variable", "ni", "hi(%)")]

# Volver a agregar TOTAL
total$Mes <- "TOTAL"
total <- total[, c("Mapeo variable", "ni", "hi(%)")]
TDF_meses <- rbind(TDF_meses, total)

kable(TDF_meses, align = 'c', caption = "Tabla de Distribucion de frecuencia de
      los meses mapeado, en el estudios del clima en el volcán Antisana en 2012  ") %>%
  kable_styling(full_width = FALSE, position = "center", bootstrap_options = c("striped", "hover", "condensed"))
Tabla de Distribucion de frecuencia de los meses mapeado, en el estudios del clima en el volcán Antisana en 2012
Mapeo variable ni hi(%)
1 31 8.47
2 29 7.92
3 31 8.47
4 30 8.20
5 31 8.47
6 30 8.20
7 31 8.47
8 31 8.47
9 30 8.20
10 31 8.47
11 30 8.20
12 31 8.47
TOTAL 366 100.00
# 3. GDF porcentual
TDF_sin_total <- TDF_meses[TDF_meses$`Mapeo variable` != "TOTAL", ]
par(mar = c(7, 7, 4, 2))
barplot(TDF_sin_total$`hi(%)`,
        main= "Gráfica N°2:Distribución de meses mapeado del estudio del clima en
        el volcán Antisana en 2012", 
        xlab = "Mapeo meses",
        ylab = "Porcentaje (%)",
        col = "blue",
        ylim = c(0,100),
        names.arg = 1:nrow(TDF_sin_total),
        las=2,
        cex.names=1.0,
        cex.axis = 0.9,
        cex.main = 0.9,
        mgp = c(2, 1, 0))

#4. Conjetura
# Modelo Uniforme porque como podemos observar la gráfica se aproxima a un modelo uniforme, ya que las barras presentan alturas similares entre las distintas clases, sin categorías marcadas en un mes en específico
#5.Cálculo de los parametros 
N <- sum(TDF_sin_total$ni)
#Frecuencias obsevadas  
freq_obs <- TDF_sin_total$`hi(%)` 
freq_obs
##  [1] 8.47 7.92 8.47 8.20 8.47 8.20 8.47 8.47 8.20 8.47 8.20 8.47
#Frecuencia teorica
freq_teo <- rep(100/ 12, 12)
freq_teo
##  [1] 8.333333 8.333333 8.333333 8.333333 8.333333 8.333333 8.333333 8.333333
##  [9] 8.333333 8.333333 8.333333 8.333333
#6. Gráfica  de comparación modelo con realidad
par(mar = c(4, 4, 4, 2))
barplot(
  rbind(freq_obs,freq_teo ),
  beside = TRUE,
  col = c("blue", "red"),
  ylim = c(0, 100),
  names.arg = TDF_sin_total$`Mapeo variable`,
  xlab = "Mapeo meses",
  ylab = "Probabilidad (%)",
  main = "Gráfica No 3: Comparación modelo con la realidad,
  meses en el estudio de clima en el volcán Antisana en 2012"
)

legend(
  "top",
  inset = 0.02,
  legend = c("Realidad", "Modelo uniforme"),
  fill = c("blue", "red"),
  horiz = TRUE,
  bty = "n"
)

#7. Tests
#7.1 Test Pearson:La correlación de Pearson no puede calcularse debido a que el modelo uniforme presenta varianza nula, ya que asigna la misma frecuencia esperada a todos los intervalos, lo que invalida su uso como medida de ajuste en este contexto.
# 7.2 Test Chi-Cuadrado : 
Fo <- TDF_sin_total$`hi(%)`      
Fe <- freq_teo         
#Chi-Cuadrado
x2<-sum(((Fo-Fe)^2)/Fe)
x2
## [1] 0.044724
#Valor crítico
alpha <- 0.05 
gl <- length(TDF_sin_total$`Mapeo variable`) - 1
gl
## [1] 11
vc <- qchisq(1 - alpha, df = gl)
vc
## [1] 19.67514
x2<vc 
## [1] TRUE
#3.2 Modelo Normal
#Carga de datos
getwd()
## [1] "/cloud/project"
setwd("/cloud/project")
datos<- read.csv("weatherdataANTISANA.csv",header = TRUE, sep = ",", dec = ".")
##Justificación:
#La velocidad del viento, medida en metros por segundo (m/s), es una variable cuantitativa continua
#porque puede tomar cualquier valor real dentro de un intervalo. Su dominio son
#todos los reales positivos incluido el cero.
#Extracción variable
viento<-datos$Wind
length(viento)
## [1] 366
#2. TDF simplificada
Histograma_viento<-hist(viento,plot=FALSE)
breaks <- Histograma_viento$breaks
Li <- breaks[1:(length(breaks)-1)]
Ls <- breaks[2:length(breaks)]
ni<-Histograma_viento$counts
n<-length(viento)
hi <- (ni / n) * 100
TDF_viento <- data.frame(
  Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
  ni = ni,
  hi= round(hi, 2)
)
colnames(TDF_viento) <- c(
  "Intervalo",
  "ni",
  "hi(%)"
)
totaless <- data.frame(
  Intervalo = "Totales",
  ni = sum(ni),           
  hi = sum(hi)          
)
colnames(totaless) <- c(
  "Intervalo",
  "ni",
  "hi(%)"
)
# Agregar al final de la tabla
TDF_viento <- rbind(TDF_viento, totaless)
kable(TDF_viento, align = 'c', caption = "Tabla de Distribucion de frecuencia
      simplificada del viento, estudio del clima volcán Antisana en 2012  ") %>%
  kable_styling(full_width = FALSE, position = "center", bootstrap_options = c("striped", "hover", "condensed"))
Tabla de Distribucion de frecuencia simplificada del viento, estudio del clima volcán Antisana en 2012
Intervalo ni hi(%)
[0.4 - 0.6) 1 0.27
[0.6 - 0.8) 1 0.27
[0.8 - 1) 10 2.73
[1 - 1.2) 30 8.20
[1.2 - 1.4) 45 12.30
[1.4 - 1.6) 58 15.85
[1.6 - 1.8) 56 15.30
[1.8 - 2) 48 13.11
[2 - 2.2) 46 12.57
[2.2 - 2.4) 35 9.56
[2.4 - 2.6) 27 7.38
[2.6 - 2.8) 7 1.91
[2.8 - 3) 2 0.55
Totales 366 100.00
#3.GDF-Histograma
TDF_viento$`hi (%)` <- as.numeric(TDF_viento$`hi(%)`)
TDF_viento_graf <- TDF_viento[TDF_viento$Intervalo != "Totales", ]
par(mar = c(9, 5, 4, 2))
post <- barplot(
  TDF_viento_graf$`hi(%)`,
  space = 0,
  col = "skyblue",
  ylim = c(0, 100),
  xaxt = "n",
  ylab = "Porcentaje (%)",
  main = "Gráfica N°1:Distribució del viento en el estudio
        del clima en el volcán Antisana en 2012"
)
axis(
  side = 1,
  at = post,
  labels = TDF_viento_graf$Intervalo,
  las = 2,
  cex.axis = 0.8
)
mtext(
  "Viento (m/s)",
  side = 1,
  line = 7
)

#4.CONJETURA DEL MODELO
#Se observa la distribución de la variable longitud sigue aproximadamente un
#modelo de distribución normal. Esto se basa en la observación de las barras
#analizadas muestran una forma media simétricas y central, característica
#de la distribución normal.

#5.CÁLCULO DE LOS PARÁMETROS DISTRIBUCIÓN NORMAL
# Media (mu)
mu <- mean(viento)
mu
## [1] 1.767787
# Desviación estándar (sigma)
sigma <- sd(viento)
sigma
## [1] 0.4557574
#6. HISTOGRAMA densidad de probabilidad
Histograma_viento <- hist(viento,
                          breaks = breaks,
                          freq = FALSE,          
                          main = "Gráfica Nº2: Comparación modelo normal con la realidad,  del viento\nestudio del clima en el volcán Antisana", 
                          xlab = "Viento (m/s)",
                          ylab = "Densidad probabilidad ",
                          col = "skyblue", ylim = c(0,1),xaxt = "n"
)  
axis(1, at = breaks)

# Secuencia para la curva normal
x <- seq(min(viento), max(viento), by=0.01)

# Curva normal 
curve(dnorm(x, mu, sigma),type="l",add = T,lwd=4, col = "red")

#7.TEST
#Test de Pearson
#Frecuencia observada
Fo<-as.numeric(table(cut(viento, breaks = breaks, include.lowest = TRUE)))
Fo
##  [1]  1  1 10 30 45 58 56 48 46 35 27  7  2
n <- length(viento)
# Probabilidad 
p <- diff(pnorm(breaks, mean = mu, sd = sigma))
# Fe 
Fe <- p * n
Fe
##  [1]  1.410630  4.266897 10.676883 22.102044 37.852440 53.634268 62.876266
##  [8] 60.986136 48.941210 32.494649 17.849751  8.111864  3.049707
Correlación<-cor(Fo,Fe)*100
Correlación
## [1] 96.24809
#Test Chi-cuadrado
# Fo y Fe en fracción
x2 <- sum((Fo - Fe)^2 / Fe)
x2
## [1] 16.28248
k <- length(Fo)
gl <- k - 1-2
gl
## [1] 10
umbral_aceptacion <- qchisq(0.95, df = gl)
umbral_aceptacion
## [1] 18.30704
x2<umbral_aceptacion
## [1] TRUE
# 8. CÁLCULO DE PROBABILDAD
#¿Cuál es la probabilidad de que en 2026 la velocidad del viento en el volcán Antisana este entre 1.4 y 1.6 (m/s)?
pnorm(1.6,mu,sigma)-pnorm(1.4,mu,sigma)
## [1] 0.1465417
# Demostración:
# Secuencia para densidad
x <- seq(0.4, 3, by=0.01)

plot(x, dnorm(x, mu, sigma), type="l", col="skyblue3", lwd=2,
     main="Gráfica N°3: Cálculo de probabilidad viento ",
     ylab="Densidad de probabilidad", xlab=" Viento (m/s)", xaxt="n")
axis(1, at = breaks)
# Área roja: 
x_section1 <- seq(1.4, 1.6, by=0.01)
y_section1 <- dnorm(x_section1, mu, sigma)
polygon(c(x_section1, rev(x_section1)), c(y_section1, rep(0, length(y_section1))),
        col=rgb(1,0,0,0.5))
# Leyenda
legend("topright", legend=c("Modelo","Área roja"),
       col=c("skyblue3","red"), lwd=2, fill=c(NA,"red"),cex = 0.8 )

# 9. INTERVALO DE CONFIANZA
media <-mean(viento)
sigma<-sd(viento)
n<-length(viento)
error<- 2*(sigma/sqrt(n))
#Límites intevalo de cofianza
limite_inferior<- round(media-error,2)
limite_superior<- round(media+error,2)
tabla_intervalo <- data.frame(Intervalo = "P [1.72< µ < 1.82] = 95%")
kable(tabla_intervalo, align = 'c', caption = "Tabla Intervalo de confianza del viento
      en el estudio del clima en el volcán Antisana en 2012  ") %>%
  kable_styling(full_width = FALSE, position = "center", bootstrap_options = c("striped", "hover", "condensed"))
Tabla Intervalo de confianza del viento en el estudio del clima en el volcán Antisana en 2012
Intervalo
P [1.72< µ < 1.82] = 95%
# 10. CONCLUSIÓN
# La variable viento en (m/s) sigue o se explica con un modelo normal 
#con parametro µ= 1,76 y σ= 0.45 y podemos afirmar con el 95% de confianza que
#la media aritmética de está variable se encuentra entre 1.71 y 1.82 (m/s) con 
#una desviación estándar de 0.455 (m/s).

# 3.3 MODELO EXPONENCIAL
# 1. Extracción de la variable y justificación
precipitación<-datos$Precipitation
#Justificación: La variable precipitación (mm) es continua porque su dominio
#corresponde al conjunto de los números reales no negativos incluido el cero.
# 2. TDF simplificada
Histograma_precipitación<-hist(precipitación,plot=FALSE)
breaks <- Histograma_precipitación$breaks
Li <- breaks[1:(length(breaks)-1)]
Ls <- breaks[2:length(breaks)]
ni<-Histograma_precipitación$counts
n<-length(precipitación)
hi <- (ni / n) * 100
TDF_precipitacion <- data.frame(
  Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
  ni = ni,
  hi= round(hi, 2)
)
colnames(TDF_precipitacion) <- c(
  "Intervalo",
  "ni",
  "hi(%)"
)
totaless <- data.frame(
  Intervalo = "Totales",
  ni = sum(ni),           # suma total de ni
  hi = sum(hi)         # suma total de hi (%
)
colnames(totaless) <- c(
  "Intervalo",
  "ni",
  "hi(%)"
)
# Agregar al final de la tabla
TDF_precipitacion <- rbind(TDF_precipitacion, totaless)
    kable(TDF_precipitacion, align = 'c', caption = "Tabla Intervalo de confianza del viento
      en el estudio del clima en el volcán Antisana en 2012  ") %>%
      kable_styling(full_width = FALSE, position = "center", bootstrap_options = c("striped", "hover", "condensed"))
Tabla Intervalo de confianza del viento en el estudio del clima en el volcán Antisana en 2012
Intervalo ni hi(%)
[0 - 10) 150 40.98
[10 - 20) 92 25.14
[20 - 30) 58 15.85
[30 - 40) 27 7.38
[40 - 50) 23 6.28
[50 - 60) 10 2.73
[60 - 70) 4 1.09
[70 - 80) 0 0.00
[80 - 90) 1 0.27
[90 - 100) 1 0.27
Totales 366 100.00
#3.GDF-Histograma
TDF_precipitacion$`hi (%)` <- as.numeric(TDF_precipitacion$`hi(%)`)
TDF_precipitacion_graf <- TDF_precipitacion[TDF_precipitacion$Intervalo != "Totales", ]
par(mar = c(9, 4, 4, 2)) 
post <- barplot(
TDF_precipitacion_graf$`hi(%)`,
    space = 0,
    col = "skyblue",
    ylim = c(0, 100),
    xaxt = "n",
    ylab = "Porcentaje (%)",
    main = "Gráfica N°1:Distribución de la precipitación en el estudio
        del clima en el volcán Antisana en 2012"
    )
axis(
    side = 1,
    at = post,
    labels = TDF_precipitacion_graf$Intervalo,
    las = 2,
    cex.axis = 0.8
    )
    mtext(
      "Precipitación (mm)",
      side = 1,
      line = 7
    )

    # 4. CONJETURA: Observando el histograma de la variable precipitación (mm),
    #se puede notar que las barras presentan una alta frecuencia de valores bajos
    #y van decreciendo rápidamente a medida que aumenta la precipitación.
    #Se sugiere que la variable podría seguir un modelo de distribución exponencial.
    
    # 5. CÁLCULO DE PARÁMETROS DISTRIBUCIÓN EXPONELCIAL
    # Media 
    media_exp <- mean(precipitación)
    media_exp   
## [1] 17.10478
    # Lambda
    lambda<-1/media_exp
    lambda    
## [1] 0.05846318
    #6. HISTOGRAMA densidad de probabilidad
    Histograma_precipitación <- hist(precipitación,
                                     breaks = breaks,
                                     freq = FALSE,          
                                     main = "Gráfica Nº2: Comparación modelo exponelcial realidad de la precipitación\n en el estudio del clima en el volcán Antisana", 
                                     xlab = " Precipitación (mm)",
                                     ylab = "Densidad probabilidad ",
                                     col = "lightblue", ylim = c(0,0.06),xaxt = "n"
    )  
    axis(1, at = breaks)
    # Curva exponencial
    curve(dexp(x,rate = lambda),
          from = 0, to = 100,
          col = "red", lwd = 2, add = TRUE)    

    #7.TEST DE BONDAD
    #Test de Pearson
    
    fo <- hist(precipitación, breaks=breaks, plot=FALSE)$counts
    fo    
##  [1] 150  92  58  27  23  10   4   0   1   1
    n <- length(precipitación)
    p <- diff(pexp(breaks, rate=lambda))
    # Fe = Probabilidad * n
    fe <- p * n
    fe    
##  [1] 162.0241746  90.2978545  50.3239874  28.0461117  15.6304065   8.7109974
##  [7]   4.8547347   2.7055970   1.5078590   0.8403464
    Correlación<-cor(fo,fe)*100
    Correlación
## [1] 99.55797
    #Test Chi-cuadrado
    x2 <- sum((fo - fe)^2 / fe)
    x2
## [1] 8.857184
    k <- length(fo)
    grados_libertad <- k - 2
    grados_libertad
## [1] 8
    umbral_aceptacion <- qchisq(0.95, df = grados_libertad)
    umbral_aceptacion
## [1] 15.50731
    x2<umbral_aceptacion
## [1] TRUE
    # 8.CÁLCULO DE PROBABILIDAD
    #“¿Cuál es la probabilidad de que las precipitaciones superen el límite de 40 (mm) en un día cualquiera?”
    1-pexp(40, rate = lambda)
## [1] 0.09646959
    #Demostración:
    # Rango de x para la curva
    x <- seq(0, 100, by=0.001)
    y <- dexp(x, rate=lambda)
    
    # Calcular máximo para ajustar ylim
    ylim_max <- max(y) * 1.1
    
    # Graficar curva principal
    plot(x, y, type="l", col="blue", lwd=2, xlim=c(0,100), ylim=c(0, ylim_max),
         main="Gráfica N°3: Cálculo de probabilidad precipitación",
         ylab="Densidad de probabilidad", xlab=" Precipitación (mm)", xaxt="n")
    
    # Área a sombrear (por ejemplo, x >= 40)
    x_section <- seq(40, 100, by=0.001)
    y_section <- dexp(x_section, rate=lambda)
    
    # Sombrear el área
    polygon(c(x_section, rev(x_section)), c(y_section, rep(0, length(y_section))),
            col=rgb(0,1,0,0.5), border=NA)  # verde semitransparente
    
    # Dibujar línea verde sobre el área
    lines(x_section, y_section, col="red", lwd=2)
    
    # Leyenda
    legend("topright", legend=c("Modelo", "Área de Probabilidad"), 
           col=c("blue","red"), lwd=2, lty=c(1,1))
    
    # Eje x
    axis(1, at=seq(0,100,by=10))

    # 9.INTERVALO DE CONFIANZĀ
    media <-mean(precipitación)
    sigma<-sd(precipitación)
    n<-length(precipitación)
    error<- 2*(sigma/sqrt(n))
    #Límites intevalo de cofianza
    limite_inferior<- round(media-error,2)
    limite_superior<- round(media+error,2)
    tabla_intervalo <- data.frame(Intervalo = "P [15.42< µ < 18.79] = 95%")
    kable(tabla_intervalo, align = 'c', caption = "Intervalo de confianza de las precipitaciones en el estudio del clima en el volcán Antisana en 2012  ") %>%
      kable_styling(full_width = FALSE, position = "center", bootstrap_options = c("striped", "hover", "condensed"))
Intervalo de confianza de las precipitaciones en el estudio del clima en el volcán Antisana en 2012
Intervalo
P [15.42< µ < 18.79] = 95%
    # 10. CONCLUSIÓN PRECIPITACIÓN
    # La variable precipitación (mm) sigue o se explica con un modelo exponencial con parametro λ= 0.058 y podemos afirmar con 95% de confianza que la media aritmetica de está variable se encuentra entre 15.42 y 18.79 (mm) con una desviación estándar de 16.115 (mm).

  # 3.4 MODELO LOGNORMAL
    # 1. Extracción de la variable y justificación
    #Justificación: La temperatura mínima es una variable continua porque puede
    #tomar cualquier valor dentro de un rango definido y no está limitada a valores
    #enteros específicos. Es decir,su dominio se define por el conjunto de los números reales.
    
    temperatura_mínima<-datos$Min.Temperature
    # 2.TDF simplificada
    Histograma_temperatura_mínima<-hist(temperatura_mínima,plot=FALSE)
    breaks <- Histograma_temperatura_mínima$breaks
    Li <- breaks[1:(length(breaks)-1)]
    Ls <- breaks[2:length(breaks)]
    ni<-Histograma_temperatura_mínima$counts
    n<-length(temperatura_mínima)
    hi <- (ni / n) * 100
    TDF_temperaturamin <- data.frame(
      Intervalo = paste0("[", round(Li,2), " - ", round(Ls,2), ")"),
      ni = ni,
      hi= round(hi, 2)
    )
    colnames(TDF_temperaturamin) <- c(
      "Intervalo",
      "ni",
      "hi(%)"
    )
    totaless <- data.frame(
      Intervalo = "Totales",
      ni = sum(ni),           # suma total de ni
      hi = sum(hi)          # suma total de hi (%)
    )
    colnames(totaless) <- c(
      "Intervalo",
      "ni",
      "hi(%)"
    )
    # Agregar al final de la tabla
    TDF_temperaturamin <- rbind(TDF_temperaturamin, totaless)
    kable(TDF_temperaturamin, align = 'c', caption = "Distribucion de frecuencia simplificado
          de la temperatura mínima,estudio del clima volcán Antisana en 2012  ") %>%
      kable_styling(full_width = FALSE, position = "center", bootstrap_options = c("striped", "hover", "condensed"))
Distribucion de frecuencia simplificado de la temperatura mínima,estudio del clima volcán Antisana en 2012
Intervalo ni hi(%)
[2 - 3) 1 0.27
[3 - 4) 2 0.55
[4 - 5) 7 1.91
[5 - 6) 16 4.37
[6 - 7) 48 13.11
[7 - 8) 109 29.78
[8 - 9) 90 24.59
[9 - 10) 66 18.03
[10 - 11) 27 7.38
Totales 366 100.00
    # 3. GDF-Histograma de la variable
    par(mar = c(5.1, 4.1, 4.1, 2.1))
    post<-barplot(TDF_temperaturamin$`hi(%)`[1:(nrow(TDF_temperaturamin)-1)],
                  space = 0,
                  col = "skyblue",
                  main = "Gráfica N°1:Distribución de la temperatura mínima, 
              estudio del clima en el volcán Antisana en 2012",
                  xlab = " Temperatura mínima (°C)",
                  ylab = "Porcentaje (%)",
                  ylim = c(0,100), xaxt = "n")
    limites <- c(post[1] - diff(post)[1]/2,
                 post + diff(post)[1]/2)
    axis(
      side = 1,
      at = limites,
      labels = round(breaks, 2),
      tck = -0.02
    )

    # 4. CONJETURA
    #Al analizar el histograma de las temperaturas mínimas, se observa que la mayor
    #frecuencia de datos se concentra hacia valores altos y que tiene sesgo
    #hacia la izquierda, indicando que hay pocos valores muy bajos de temperatura. 
    #Esto sugiere que los datos podrían aproximarse a un modelo log-normal.
    
    # 5. CÁLCULO DE PARÁMETROS DISTRIBUCIÓN LOG-NORMAL
    min(temperatura_mínima)      
## [1] 2.65
    log_temp <- log(temperatura_mínima)
    mulog <- mean(log_temp)
    sigmalog <- sd(log_temp)
    
    # 6. GDF-HISTOGRAMA DENSIDAD DE PROBABILIDAD 
    Histograma_temperatura_mínima <- hist(
      temperatura_mínima,
      breaks = breaks,
      col = "skyblue",
      freq = FALSE,
      main = "Gráfica N°2: Comparación de la Realidad y el Modelo Log-normal
        de la temperatura mínima en el estudio del clima en el volcán Antisana",
      xlab = " Temperatura mínima (°C)",
      ylab = "Densidad de probabilidad",
      cex.main = 0.9, ylim = c(0,0.4),xaxt = "n")
    axis(1, at = breaks)
    x <- seq(min(temperatura_mínima), max(temperatura_mínima), by=0.001)
    curve(
      dlnorm(x, meanlog = mulog, sdlog = sigmalog),
      col = "red",
      lwd = 3,
      add = TRUE
    )    

    # 7. TEST DE BONDAD
    
    # Test de Pearson
    fo <- hist(temperatura_mínima, breaks=breaks, plot=FALSE)$counts
    fo
## [1]   1   2   7  16  48 109  90  66  27
    n <- length(temperatura_mínima)
    fe <- numeric(length(fo))  # vector vacío para frecuencias esperadas
    
    for(i in 1:length(fo)){
      fe[i] <- n * (plnorm(breaks[i+1], meanlog = mulog, sdlog = sigmalog) -
                      plnorm(breaks[i], meanlog = mulog, sdlog = sigmalog))
    }
    fe
## [1] 4.914119e-05 5.410726e-02 2.666588e+00 2.324386e+01 6.823973e+01
## [6] 9.706234e+01 8.401222e+01 5.137289e+01 2.453682e+01
    Correlación<-cor(fo,fe)*100
    Correlación
## [1] 96.62853
    #Test de Chi-cuadrado
    fe_frac <- fe / n
    fe_frac
## [1] 1.342655e-07 1.478340e-04 7.285759e-03 6.350780e-02 1.864473e-01
## [6] 2.651976e-01 2.295416e-01 1.403631e-01 6.704049e-02
    fo_frac <- fo / n
    fo_frac
## [1] 0.002732240 0.005464481 0.019125683 0.043715847 0.131147541 0.297814208
## [7] 0.245901639 0.180327869 0.073770492
    x2 <- sum((fo_frac - fe_frac)^2 / fe_frac)
    x2
## [1] 55.84459
    k <- length(fo_frac)
    gl <- k - 1 -2
    gl
## [1] 6
    umbral_aceptacion <- qchisq(0.9999999999, df = gl)
    umbral_aceptacion
## [1] 58.2918
    x2<umbral_aceptacion
## [1] TRUE
    # 9. CÁLCULO DE PROBABILIDAD
    
    # ¿Cuál es la probabilidad de que la temperatura mínima se encuentre entre 7 y 8 (°C) en 2026?
    plnorm(8, mulog, sigmalog) - plnorm(7, mulog, sigmalog)
## [1] 0.2651976
    #Demostración:
    x <- seq(min(temperatura_mínima), max(temperatura_mínima), by=0.001)
    plot(x, dlnorm(x, mulog,sigmalog), col = "blue", lwd = 1, xaxt = "n", ylim=c(0,0.3),
         main="Gráfica N°6: Cálculo de probabilidad temperatura mínima",
         ylab="Densidad de probabilidad",xlab=" Temperatura mínima (°C)", xaxt="n")
    
    # Definir el rango de la sección que quieres pintar
    x <- seq(7, 8,0.001)
    y_section <- dlnorm(x, mulog,sigmalog)
    
    # Pintar la sección de la curva
    lines(x, y_section, col = "red", lwd = 2)
    
    # Pintar el área debajo de la línea roja
    polygon(c(x, rev(x)), c(y_section, rep(0, length(y_section))), col = rgb(1, 0, 0, 0.6))
    
    x_section2 <- seq(2, 8, by=0.001)
    y_section2 <- dlnorm(x_section2, mulog, sigmalog)
    
    # Añadir leyenda
    legend("topright", 
           legend = c("Modelo", "Área de Probabilidad (7-8°C)"), 
           col = c("skyblue3", "red"), 
           lwd = 2, 
           pch = c(NA, 15, 15),   
           cex = 0.7,             
           pt.cex = 1)          
    
    axis(1, at = breaks)

    # 10.INTERVALO DE CONFIANZĀ
    media <-mean(temperatura_mínima)
    sigma<-sd(temperatura_mínima)
    n<-length(temperatura_mínima)
    error<- 2*(sigma/sqrt(n))
    #Límites intevalo de cofianza
    limite_inferior<- round(media-error,2)
    limite_superior<- round(media+error,2)
    tabla_intervalo <- data.frame(Intervalo = "P [7.9< µ <8.19] = 95%")
    kable(tabla_intervalo, align = 'c', caption = "Intervalo de confianza de la
          temperatura mínima en el estudio del clima en el volcán Antisana en 2012  ") %>%
      kable_styling(full_width = FALSE, position = "center", bootstrap_options = c("striped", "hover", "condensed"))
Intervalo de confianza de la temperatura mínima en el estudio del clima en el volcán Antisana en 2012
Intervalo
P [7.9< µ <8.19] = 95%
    # 11. CONCLUSIÓN TEMPERATURA MÍNIMA
    # La variable  temperatura mínima  (°C) sigue o se explica con un modelo log-normal
    #inverso con parametros µ = 2.068 y σ = 0.188 y podemos afirmar con 95% de confianza que la
    #media aritmética de está variable se encuentra entre 7.9 y 8.19 (°C) con una desviasión estándar de 1.37 (°C).

4. Estadistica Multivariable

# Seleccionar dos variables
# y= mx+b
y<-datos$Max.Temperature
x<-datos$Solar
#Causa y efecto: Más radiación solar provoca mayores temperaturas máximas durante el día. Muestran una relación directamente proporcional: a mayor radiación, mayor temperatura máxima.
# 2. Tabla pares de valores (TVP)

TVP_tem_radi<-data.frame(x,y)
TVP_tem_radi %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 1*"),
    subtitle = md("**Pares de valores de tempratura máxima y radiación solar, estudio del clima volcán Antisana en 2012 **")
  ) %>%
  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"
  )
Tabla Nro. 1
**Pares de valores de tempratura máxima y radiación solar, estudio del clima volcán Antisana en 2012 **
x y
15.98 16.10
12.25 15.50
4.58 11.55
4.32 12.02
3.86 11.73
9.57 12.11
10.93 13.06
2.40 11.53
5.32 12.95
7.19 13.38
6.71 12.99
10.77 17.40
9.66 15.88
5.37 13.65
4.02 13.07
9.64 13.81
8.11 13.02
3.19 12.31
3.64 12.73
5.60 12.17
8.75 12.54
4.57 11.78
1.52 10.51
1.93 10.32
10.43 12.81
3.60 11.91
6.45 13.18
1.35 11.57
5.55 11.94
6.50 12.39
6.87 13.27
8.17 13.38
1.58 11.58
5.28 12.85
10.11 14.18
8.24 14.65
1.90 12.42
6.07 13.84
7.16 13.48
7.87 14.34
11.57 14.38
2.15 11.13
8.31 12.91
6.11 11.59
8.86 12.47
5.92 11.55
5.95 12.14
5.10 10.73
4.00 11.42
8.01 12.26
4.08 11.38
3.59 12.04
2.83 10.83
2.90 10.99
3.07 11.43
1.82 11.41
1.54 11.05
4.28 11.56
6.99 12.24
6.89 12.80
9.89 14.44
11.45 17.04
8.35 16.21
5.44 14.15
4.63 12.85
9.72 14.69
11.63 17.98
16.16 17.10
20.53 18.81
13.70 15.57
17.42 17.53
16.27 17.50
18.80 19.00
14.41 16.85
14.52 17.11
13.32 17.07
8.32 14.42
3.98 13.91
4.49 11.73
2.39 11.71
7.02 12.45
4.29 12.23
7.79 13.20
4.83 12.81
5.59 12.19
8.29 12.93
4.73 12.92
4.83 14.30
11.93 15.56
14.83 18.25
12.42 15.47
13.34 16.30
13.22 16.92
11.89 15.52
4.44 12.28
3.45 11.86
5.38 13.75
7.20 13.52
4.74 10.97
8.03 13.76
10.47 12.32
16.45 14.53
10.60 13.10
11.69 13.70
10.17 14.20
11.57 13.42
4.33 11.81
5.45 12.39
3.56 12.24
7.98 14.56
9.87 13.90
10.95 14.77
7.18 13.07
11.98 15.19
8.21 14.36
16.90 17.63
3.87 14.35
9.73 14.36
5.13 13.42
3.54 12.37
7.40 13.71
7.61 14.26
13.65 15.88
21.70 17.35
16.46 16.22
14.53 14.77
11.31 15.35
12.95 15.15
13.57 16.49
12.13 15.26
15.54 16.23
11.48 14.93
6.16 14.18
5.63 13.50
14.65 17.12
10.78 15.33
13.21 18.85
16.16 17.26
11.76 14.43
4.89 12.55
4.61 15.70
7.98 14.04
13.62 16.14
18.58 16.67
25.28 17.34
24.96 19.19
25.11 18.76
26.70 20.24
21.17 20.09
21.44 18.54
24.41 18.68
26.23 19.89
23.67 18.43
16.36 18.98
15.49 16.35
21.36 17.08
19.28 17.26
25.20 17.44
25.88 19.12
22.03 17.09
24.51 17.64
25.95 19.02
24.77 19.65
22.40 16.46
24.38 16.26
14.84 16.16
21.01 16.79
16.21 15.58
21.77 16.27
20.93 16.00
17.68 15.21
20.32 19.65
19.89 16.57
26.28 19.16
20.91 18.09
15.23 18.03
23.15 15.83
23.24 17.46
25.32 17.67
24.51 16.63
12.93 15.50
23.49 16.79
20.54 19.42
26.46 20.59
23.87 18.13
22.65 16.34
14.82 16.26
22.19 16.80
21.11 17.32
26.14 20.88
25.97 18.58
23.48 18.67
23.31 17.66
24.58 16.55
24.72 17.46
22.81 16.51
24.74 17.63
26.30 19.27
26.68 19.19
25.67 21.32
27.03 21.00
21.33 17.72
21.60 18.12
27.15 21.21
27.00 20.38
26.87 19.82
27.49 21.56
27.57 21.51
25.71 19.87
26.45 22.60
21.47 18.15
26.02 21.06
23.87 19.74
25.68 20.39
25.50 18.06
21.02 17.88
24.63 19.26
27.04 20.71
27.21 18.95
27.82 17.64
28.31 19.24
28.43 21.20
23.69 18.99
23.32 18.60
13.49 16.81
20.40 16.94
14.08 17.44
18.42 17.27
21.71 17.40
12.10 16.37
22.30 17.60
28.54 19.69
28.45 19.10
28.67 20.61
28.30 18.10
28.57 17.79
28.66 18.00
28.51 20.83
26.72 22.34
24.67 21.30
28.99 23.47
20.94 19.11
27.35 22.96
26.15 20.48
29.49 21.47
23.54 20.39
24.22 18.32
27.74 18.56
23.88 20.02
29.54 20.89
25.65 18.82
26.40 20.48
29.99 23.42
29.10 19.31
30.05 22.04
27.33 19.40
30.27 23.79
27.88 21.01
29.26 19.79
26.31 17.86
25.28 17.67
16.94 16.78
25.09 17.85
18.76 17.49
17.01 16.46
24.15 18.33
19.89 17.39
12.87 15.34
20.83 16.45
27.79 19.00
13.61 17.11
16.59 16.80
28.21 18.20
29.04 20.20
20.77 17.60
22.85 16.89
24.65 16.29
16.29 16.26
1.26 10.99
7.55 12.66
12.11 15.47
5.30 13.82
9.01 15.20
12.84 14.06
13.35 13.94
9.25 14.15
6.27 13.32
11.19 14.75
13.04 15.17
3.62 12.79
3.59 11.35
8.39 12.74
10.04 12.82
15.18 16.27
10.40 14.66
17.05 15.87
19.09 15.81
11.32 13.80
7.11 15.02
13.48 16.01
14.67 17.23
20.45 16.83
13.20 15.29
10.21 13.90
5.55 13.43
11.93 14.55
13.24 15.19
13.15 15.61
5.84 12.55
9.66 14.36
3.99 13.20
5.15 12.71
13.12 15.60
7.19 13.93
2.79 12.49
8.17 13.75
7.26 13.09
9.12 14.87
10.44 13.98
11.50 14.85
23.43 15.32
16.92 15.52
15.19 15.95
4.54 13.00
3.13 13.62
2.94 13.57
8.98 13.81
9.89 14.39
3.45 13.06
9.99 15.19
4.31 13.69
9.00 15.04
10.37 13.39
10.61 14.27
5.39 11.88
11.20 14.25
8.83 13.24
23.37 14.99
11.88 13.88
8.28 12.86
14.59 15.73
11.84 15.78
11.56 15.75
13.27 18.26
19.30 18.82
9.04 14.77
7.86 13.58
12.35 13.96
17.65 15.20
15.82 15.10
9.98 14.00
10.62 13.25
11.39 13.85
6.37 13.19
9.36 14.44
6.03 13.40
5.20 13.45
12.47 17.23
7.48 14.27
11.81 15.65
7.68 13.97
10.47 15.41
9.85 16.39
14.04 16.21
11.64 16.63
5.71 13.17
Autor: Grupo 1
# 3. Gráfica de dispersión 
plot(x, y,
     main = "Gráfica No1:Diagrama de dispersión entre Temperatura máxima y Radiación solar
     en el estudio clima en el volcán Antisana en 2012",
     xlab = "Radiación solar (J/m²)",      
     ylab = "Temperatura máxima (°C)",  
     col = "yellow",                        
     pch = 16,                              
     cex = 1.2,                             
     cex.main = 1,                          
     cex.lab = 1,                           
     cex.axis = 0.9,
     xlim = c(0, max(x)*1.05),   
     ylim = c(0, max(y)*1.05))     

# 4. Conjetura

#La distribución de los puntos sugiere un modelo lineal, ya que a medida que la radiación solar aumenta, la temperatura máxima también aumenta, mostrando una relación directamente proporcional.Los puntos tienden a alinearse siguiendo una pendiente positiva. Esto indica que se puede ajustar una recta de regresión lineal para describir la relación causa-efecto entre radiación y temperatura máxima.

# 5. Cálculo de parámetros modelo lineal
regresionlineal<- lm(y~x)
# Ver los coeficientes (intercepto y pendiente)
intercepto <- coef(regresionlineal)[1]
pendiente  <- coef(regresionlineal)[2]
intercepto
## (Intercept) 
##    11.22374
pendiente
##        x 
## 0.312879
# 6. Gráfica de dispersión modelo-realidad
plot(x, y,
     main = " Gráfica No2:  Regresión lineal entre la Temperatura máxima y Radiación solar 
     en el volcán Antisana en 2012 ",
     xlab = "Radiación solar (J/m²)",      # Nombre eje X
     ylab = "Temperatura máxima (°C)",     # Nombre eje Y
     col = "yellow",                        # Color de los puntos
     pch = 16,                              # Tipo de punto sólido
     cex = 1.2,                             # Tamaño de los puntos
     cex.main = 1,                          # Tamaño del título
     cex.lab = 1,                           # Tamaño de los ejes
     cex.axis = 0.9,
     xlim = c(0, max(x)*1.05),   
     ylim = c(0, max(y)*1.05))                        

abline(lm(y ~ x), col = "blue", lwd = 2)

# 7. Test de bondad
#Test de Pearson, coeficiente de correlación
r<- cor(x,y)*100
r
## [1] 90.87017
# 8. Coeficiente de determinación muestral
r2<- r^2/100
r2
## [1] 82.57388
# 9. Restricciones
#Dominio [x]: D= {R+^0}
#Dominio [y]: D= {R}
# ¿Existe algún valor en dominio de x que sustituido en el modelo matemático genere un valor en y fuera de su dominio?
#No, ningún valor del dominio de x genera un valor fuera del dominio de y porque la radiación solar (x >= 0) al sustituirse en el modelo lineal produce siempre un valor de temperatura máxima (y) que pertenece a R, por lo que el modelo es consistente con los dominios definidos de ambas variables.

# 10. Aplicaciones del modelo
# La temperatura máxima esperada cuando la radiación solar es de 25 (J/m2)
Temperatura_esperada<- 0.31*25+11.25
Temperatura_esperada
## [1] 19
# 11. Conclusión 
# Entre temperatura máxima (°C) y radiación solar (J/m2) existe la relación tipo lineal cuya ecuación es y=11.223+0.312x siendo y= máxima temperatura (°C), x= radiación solar (J/m2), donde la temperaatura máxima depende en un 82.57% de la radiación solar y el 18.43% se debe a otros factores.

#4.1.2 Modelo potencial
# 1. Seleccionar dos variables

#y=ax^b
y<-datos$Relative.Humidity
x<-datos$Precipitation

#Causa y efecto: La humedad depende de las precipitaciones porque la lluvia incrementa el contenido de vapor de agua en el aire y mantiene superficies húmedas que favorecen la evaporación. Como efecto, después de eventos de precipitación, la humedad atmosférica aumenta y se mantiene elevada durante un cierto periodo de tiempo.

# 2. Tabla pares de valores (TVP)

TVP_hum_prec<-data.frame(x,y)
TVP_hum_prec %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 1*"),
    subtitle = md("**Pares de valores de Humedad y las Precipitaciones, estudio del clima volcán Antisana en 2012 **")
  ) %>%
  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"
  )
Tabla Nro. 1
**Pares de valores de Humedad y las Precipitaciones, estudio del clima volcán Antisana en 2012 **
x y
8.49 0.93
35.44 0.96
41.53 0.98
15.48 0.99
28.71 0.98
25.19 0.97
39.93 0.98
35.60 0.99
15.50 0.99
45.68 0.98
29.73 0.98
11.20 0.96
16.77 0.96
13.35 0.98
52.73 0.99
10.92 0.97
19.39 0.98
29.87 0.99
27.80 0.99
16.52 0.98
25.12 0.97
35.05 0.99
30.89 0.99
32.35 0.99
14.69 0.97
33.65 0.99
24.74 0.98
64.67 0.99
17.45 0.98
24.05 0.99
33.22 0.98
50.27 0.98
25.74 0.99
3.55 0.98
16.32 0.97
24.14 0.98
24.82 0.99
10.18 0.97
37.97 0.98
10.68 0.97
20.89 0.96
18.26 0.99
14.17 0.97
11.60 0.98
26.46 0.97
10.60 0.98
10.34 0.97
13.44 0.98
57.38 0.98
45.10 0.97
37.71 0.99
42.52 0.99
27.71 0.99
35.95 0.99
49.86 0.99
94.72 0.99
60.11 0.99
28.01 0.98
41.88 0.99
46.03 0.98
43.64 0.97
3.69 0.95
28.26 0.94
17.10 0.95
27.47 0.98
27.18 0.96
12.57 0.95
18.83 0.92
12.51 0.90
18.74 0.90
12.59 0.90
10.30 0.90
20.02 0.92
29.23 0.94
19.94 0.94
5.15 0.94
58.41 0.97
85.58 0.99
35.99 0.99
40.02 0.99
30.77 0.99
58.20 0.99
36.14 0.99
16.34 0.99
12.73 0.99
10.29 0.98
21.25 0.98
24.25 0.98
11.50 0.96
13.82 0.92
6.74 0.93
39.14 0.94
14.00 0.94
36.47 0.94
59.47 0.99
57.83 0.99
40.07 0.98
64.03 0.98
34.26 0.98
8.97 0.95
1.36 0.95
2.46 0.90
3.26 0.91
7.41 0.96
8.86 0.95
3.92 0.92
18.11 0.99
34.71 0.99
31.20 0.99
29.70 0.97
40.76 0.97
17.31 0.98
15.51 0.98
25.92 0.95
37.77 0.99
17.09 0.93
39.98 0.98
23.68 0.98
22.57 0.98
16.60 0.99
22.62 0.98
18.58 0.97
7.83 0.92
2.27 0.87
7.07 0.89
13.39 0.92
7.36 0.94
13.66 0.92
2.20 0.90
28.69 0.91
19.72 0.92
26.41 0.96
20.52 0.98
21.28 0.98
14.49 0.93
12.37 0.94
13.90 0.94
24.52 0.93
24.87 0.97
28.80 0.99
9.71 0.97
2.97 0.96
14.47 0.93
6.19 0.91
3.46 0.88
5.38 0.87
9.14 0.88
0.04 0.83
5.60 0.85
0.46 0.84
5.52 0.81
0.36 0.78
0.01 0.81
9.70 0.85
14.35 0.90
11.36 0.88
6.68 0.92
8.48 0.85
1.19 0.82
8.21 0.85
6.08 0.84
0.11 0.77
4.13 0.80
7.23 0.86
1.86 0.83
8.49 0.84
7.93 0.84
14.25 0.89
15.33 0.88
7.40 0.90
5.64 0.89
12.61 0.87
4.48 0.90
0.18 0.79
0.09 0.75
0.84 0.81
9.44 0.85
0.38 0.79
0.11 0.72
2.42 0.77
3.35 0.88
2.38 0.85
0.28 0.76
0.01 0.73
0.58 0.76
0.66 0.81
9.39 0.87
2.35 0.86
5.72 0.81
0.01 0.73
0.23 0.77
8.47 0.78
7.89 0.86
13.06 0.84
2.01 0.78
8.28 0.81
8.60 0.80
0.71 0.77
0.44 0.71
0.01 0.66
0.01 0.67
4.83 0.72
5.72 0.71
0.06 0.68
0.01 0.63
0.23 0.69
0.01 0.64
0.01 0.63
0.17 0.68
0.05 0.70
2.51 0.73
1.58 0.74
3.29 0.74
1.33 0.68
7.51 0.71
9.49 0.78
10.06 0.84
0.03 0.72
0.01 0.56
1.02 0.62
0.01 0.62
0.01 0.58
2.13 0.71
12.86 0.79
13.60 0.89
12.50 0.89
0.42 0.86
0.95 0.84
2.91 0.82
41.50 0.91
6.00 0.86
0.01 0.75
1.05 0.72
0.01 0.68
0.14 0.74
1.04 0.73
0.05 0.72
0.01 0.67
0.01 0.65
0.01 0.68
0.01 0.67
0.01 0.72
0.28 0.66
0.18 0.63
0.01 0.62
0.02 0.63
0.08 0.66
1.79 0.64
0.55 0.65
1.94 0.63
11.66 0.74
6.54 0.75
0.01 0.64
0.04 0.64
0.03 0.66
0.06 0.69
0.01 0.64
2.75 0.70
1.53 0.69
4.06 0.69
13.65 0.78
21.54 0.90
8.13 0.87
10.52 0.90
8.61 0.92
11.68 0.88
26.40 0.86
24.62 0.93
16.24 0.92
0.67 0.77
17.23 0.87
12.60 0.89
3.13 0.82
6.38 0.78
14.32 0.85
16.18 0.87
10.41 0.89
16.51 0.88
44.39 0.99
21.21 0.97
27.92 0.96
18.95 0.98
14.67 0.97
20.20 0.98
22.97 0.98
21.08 0.98
50.09 0.99
22.57 0.96
18.25 0.97
40.71 0.99
48.82 0.99
12.91 0.98
14.96 0.98
7.33 0.90
9.17 0.97
5.73 0.94
12.16 0.93
21.75 0.97
52.69 0.97
14.19 0.96
26.98 0.92
8.53 0.92
11.19 0.96
48.33 0.98
40.68 0.99
5.74 0.97
14.09 0.96
21.30 0.97
19.90 0.99
42.98 0.97
33.36 0.98
34.78 0.99
10.92 0.95
21.17 0.99
39.67 0.99
64.26 0.98
20.04 0.98
45.55 0.97
41.15 0.99
11.55 0.97
5.83 0.93
7.28 0.91
16.71 0.94
24.15 0.99
32.80 0.99
53.78 0.99
19.83 0.99
17.01 0.98
38.36 0.99
26.87 0.98
25.81 0.98
45.19 0.97
22.99 0.98
37.36 0.96
24.14 0.97
8.45 0.96
7.55 0.96
1.11 0.90
8.02 0.94
12.97 0.97
2.66 0.91
11.60 0.92
9.76 0.96
0.76 0.91
16.58 0.88
26.98 0.98
14.07 0.98
3.28 0.95
7.10 0.91
7.55 0.93
4.36 0.95
12.09 0.96
16.79 0.96
26.10 0.97
25.61 0.98
47.70 0.98
10.09 0.98
48.24 0.95
27.62 0.98
29.20 0.97
16.66 0.98
9.16 0.96
4.66 0.95
5.84 0.93
15.57 0.94
14.64 0.97
Autor: Grupo 1
# 3. Gráfica de dispersión 
plot(x, y,
     main = "Gráfica No1:Diagrama de dispersión entre humedad y precipitaciones
     en el estudio clima en el volcán Antisana en 2012",
     xlab = " Precipitaciones (mm)",      # Nombre eje X
     ylab = " Humedad (%)",     # Nombre eje Y
     col = "purple",                        # Color de los puntos
     pch = 16,                              # Tipo de punto sólido
     cex = 1.2,                             # Tamaño de los puntos
     cex.main = 1,                          # Tamaño del título
     cex.lab = 1,                           # Tamaño de los ejes
     cex.axis = 0.9,
     xlim = c(0, max(x)*1.05),   
     ylim = c(0, max(y)*1.05)) 

# 4. Conjetura

#La distribución de los puntos sugiere un modelo potencial, la distribución de los datos forma una curva, lo que indica que la relación entre precipitaciones y humedad no es lineal, ya que la humedad aumenta rápidamente con lluvias bajas y luego el crecimiento se vuelve más gradual a medida que las precipitaciones son mayores.

# 5. Cálculo de parámetros modelo potencial

x1<- log(x)
y1<- log(y)
regresionpotencial<- lm(y1~x1)
# Ver los coeficiente y exponente (a,b)
beta0<- regresionpotencial$coefficients[1]
beta1<- regresionpotencial$coefficients[2]

b<- (beta1)
a<- exp(beta0)

# 6. Gráfica de dispersión modelo-realidad
plot(x, y,
     main = " Gráfica No2:  Regresión potencial entre la humedad y precipitaciones
     en el volcán Antisana en 2012 ",
     xlab = " Precipitaciones (mm)",      # Nombre eje X
     ylab = "Humedad (%)",     # Nombre eje Y
     col = "purple",                        # Color de los puntos
     pch = 16,                              # Tipo de punto sólido
     cex = 1.2,                             # Tamaño de los puntos
     cex.main = 1,                          # Tamaño del título
     cex.lab = 1,                           # Tamaño de los ejes
     cex.axis = 0.9,
     xlim = c(0, max(x)*1.05),   
     ylim = c(0, max(y)*1.05))                        

curve(a * x^b,
      add = TRUE,
      n=1000,
      col = "blue",
      from = min(x),
      to = max(x),
      lwd = 2)

# 7. Test de bondad
#Test de Pearson, coeficiente de correlación
r<- cor(x1,y1)*100
r
## [1] 85.11525
# 8. Coeficiente de determinación muestral
r2<- r^2/100
r2
## [1] 72.44606
# 9. Restricciones
#Dominio [x]: D= {R+^0}
#Dominio [y]: D= {0,1}
# ¿Existe algún valor en dominio de x que sustituido en el modelo matemático genere un valor en y fuera de su dominio?
# Se observa que la humedad permanece dentro de su dominio hasta aproximadamente x ≈ 70. A partir de valores mayores, el modelo comienza a generar humedades superiores al límite establecido, por lo que el modelo potencial es válido únicamente para valores de x menores o iguales a 70 y debe restringirse a ese intervalo para mantener coherencia física.

# 10. Aplicaciones del modelo
# La humedad esperda  cuando las precipitaciones son de 40mm 
Humedad_esperada<- 0.809*40^0.0507
Humedad_esperada
## [1] 0.975378
# 11. Conclusión 
# Entre la humedad y precipitación en el volcán Antisana, existe una relación de tipo potencial cuya ecuacion es y=0.0809x^0.0507 donde x es la precipitación en (mm), y es humedad en fracción en (%), donde la humedad depende en un 72.4% de las precipitaciones y el 27.6% se debe a otros factores. El modelo presenta restricciones y funciona con presipitaciones <= 70 (mm) de agua y por ejemplo en precipitaciones de 40(mm) se espera una humedad de 0.97%.


 # 4.1.3 Modelo exponencial
# 1. Seleccionar dos variables

#Promedios

datos_prom <- aggregate(Precipitation ~ Solar, data = datos, mean)

y<-datos_prom$Precipitation
x<-datos_prom$Solar

#Causa y efecto: La radiación solar actúa como causa porque controla la energía disponible en la atmósfera, favoreciendo procesos como la evaporación y la convección. Como efecto, al aumentar la radiación solar se incrementa la probabilidad e intensidad de las precipitaciones

# 2. Tabla pares de valores (TVP)

TVP_pre_radi<-data.frame(x,y)
TVP_pre_radi %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 1*"),
    subtitle = md("**Pares de valores de precipitacion y radiacion solar, estudio del clima volcan Antisana en 2012 **")
  ) %>%
  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"
  )
Tabla Nro. 1
**Pares de valores de precipitacion y radiacion solar, estudio del clima volcan Antisana en 2012 **
x y
1.26 44.390
1.35 64.670
1.52 30.890
1.54 60.110
1.58 25.740
1.82 94.720
1.90 24.820
1.93 32.350
2.15 18.260
2.39 40.020
2.40 35.600
2.79 39.670
2.83 27.710
2.90 35.950
2.94 53.780
3.07 49.860
3.13 32.800
3.19 29.870
3.45 48.095
3.54 16.600
3.56 31.200
3.59 45.670
3.60 33.650
3.62 40.710
3.64 27.800
3.86 28.710
3.87 39.980
3.98 85.580
3.99 33.360
4.00 57.380
4.02 52.730
4.08 37.710
4.28 28.010
4.29 58.200
4.31 25.810
4.32 15.480
4.33 18.110
4.44 59.470
4.49 35.990
4.54 24.150
4.57 35.050
4.58 41.530
4.61 9.710
4.63 27.470
4.73 21.250
4.74 34.260
4.83 20.295
4.89 28.800
5.10 13.440
5.13 22.570
5.15 34.780
5.20 10.090
5.28 3.550
5.30 18.950
5.32 15.500
5.37 13.350
5.38 40.070
5.39 24.140
5.44 17.100
5.45 34.710
5.55 29.065
5.59 12.730
5.60 16.520
5.63 21.280
5.71 14.640
5.84 19.900
5.92 10.600
5.95 10.340
6.03 47.700
6.07 10.180
6.11 11.600
6.16 20.520
6.27 50.090
6.37 26.100
6.45 24.740
6.50 24.050
6.71 29.730
6.87 33.220
6.89 46.030
6.99 41.880
7.02 30.770
7.11 52.690
7.16 37.970
7.18 15.510
7.19 33.425
7.20 64.030
7.26 20.040
7.40 22.620
7.48 27.620
7.55 21.210
7.61 18.580
7.68 16.660
7.79 36.140
7.86 14.070
7.87 10.680
7.98 16.335
8.01 45.100
8.03 8.970
8.11 19.390
8.17 57.265
8.21 37.770
8.24 24.140
8.28 12.970
8.29 10.290
8.31 14.170
8.32 58.410
8.35 28.260
8.39 12.910
8.75 25.120
8.83 7.550
8.86 26.460
8.98 19.830
9.00 45.190
9.01 14.670
9.04 26.980
9.12 45.550
9.25 21.080
9.36 25.610
9.57 25.190
9.64 10.920
9.66 29.875
9.72 27.180
9.73 23.680
9.85 4.660
9.87 40.760
9.89 30.325
9.98 4.360
9.99 26.870
10.04 14.960
10.11 16.320
10.17 8.860
10.21 48.330
10.37 22.990
10.40 9.170
10.43 14.690
10.44 41.150
10.47 5.260
10.60 3.260
10.61 37.360
10.62 12.090
10.77 11.200
10.78 12.370
10.93 39.930
10.95 17.310
11.19 22.570
11.20 8.450
11.31 7.360
11.32 21.750
11.39 16.790
11.45 3.690
11.48 26.410
11.50 11.550
11.56 9.760
11.57 12.405
11.63 12.570
11.64 15.570
11.69 7.410
11.76 24.870
11.81 29.200
11.84 11.600
11.88 8.020
11.89 36.470
11.93 8.620
11.98 25.920
12.10 41.500
12.11 27.920
12.13 28.690
12.25 35.440
12.35 3.280
12.42 6.740
12.47 48.240
12.84 20.200
12.87 24.620
12.93 3.350
12.95 13.660
13.04 18.250
13.12 10.920
13.15 21.300
13.20 11.190
13.21 13.900
13.22 14.000
13.24 14.090
13.27 0.760
13.32 5.150
13.34 39.140
13.35 22.970
13.48 14.190
13.49 13.600
13.57 2.200
13.61 17.230
13.62 14.470
13.65 7.830
13.70 18.740
14.04 5.840
14.08 0.420
14.41 29.230
14.52 19.940
14.53 13.390
14.59 2.660
14.65 14.490
14.67 26.980
14.82 9.390
14.83 13.820
14.84 8.490
15.18 7.330
15.19 16.710
15.23 0.840
15.49 14.350
15.54 19.720
15.82 7.550
15.98 8.490
16.16 21.675
16.21 14.250
16.27 10.300
16.29 16.510
16.36 9.700
16.45 2.460
16.46 7.070
16.59 12.600
16.90 17.090
16.92 7.280
16.94 21.540
17.01 8.610
17.05 5.730
17.42 12.590
17.65 7.100
17.68 5.640
18.42 0.950
18.58 6.190
18.76 10.520
18.80 20.020
19.09 12.160
19.28 6.680
19.30 16.580
19.89 15.440
20.32 12.610
20.40 12.500
20.45 8.530
20.53 12.510
20.54 0.280
20.77 14.320
20.83 16.240
20.91 0.090
20.93 7.400
20.94 0.010
21.01 7.930
21.02 9.490
21.11 5.720
21.17 5.600
21.33 4.830
21.36 11.360
21.44 0.460
21.47 2.510
21.60 5.720
21.70 2.270
21.71 2.910
21.77 15.330
22.03 8.210
22.19 2.350
22.30 6.000
22.40 7.230
22.65 0.660
22.81 8.280
22.85 16.180
23.15 9.440
23.24 0.380
23.31 7.890
23.32 12.860
23.37 1.110
23.43 5.830
23.48 8.470
23.49 2.380
23.54 0.020
23.67 0.010
23.69 2.130
23.87 1.935
23.88 0.550
24.15 11.680
24.22 0.080
24.38 1.860
24.41 5.520
24.51 4.250
24.58 13.060
24.63 10.060
24.65 10.410
24.67 0.010
24.72 2.010
24.74 8.600
24.77 4.130
24.96 5.380
25.09 8.130
25.11 9.140
25.20 8.480
25.28 8.555
25.32 0.110
25.50 7.510
25.65 11.660
25.67 0.010
25.68 1.330
25.71 0.170
25.88 1.190
25.95 0.110
25.97 0.230
26.02 1.580
26.14 0.010
26.15 0.180
26.23 0.360
26.28 0.180
26.30 0.710
26.31 4.060
26.40 6.540
26.45 0.050
26.46 0.010
26.68 0.440
26.70 0.040
26.72 0.010
26.87 0.230
27.00 0.010
27.03 0.010
27.04 0.030
27.15 0.060
27.21 0.010
27.33 0.060
27.35 0.280
27.49 0.010
27.57 0.010
27.74 1.790
27.79 0.670
27.82 1.020
27.88 2.750
28.21 3.130
28.30 0.140
28.31 0.010
28.43 0.010
28.45 1.050
28.51 0.010
28.54 0.010
28.57 1.040
28.66 0.050
28.67 0.010
28.99 0.010
29.04 6.380
29.10 0.040
29.26 1.530
29.49 0.010
29.54 1.940
29.99 0.010
30.05 0.030
30.27 0.010
Autor: Grupo 1
# 3. Gráfica de dispersión 
plot(x, y,
     main = "Grafica No1:Diagrama de dispersion entre Precipitaciones y Radiacion solar\n
     en el estudio clima en el volcan Antisana en 2012",
     xlab = "Radiacion solar (J/m2)",      
     ylab = "Precipitacion (mm)",     
     col = "pink",                        
     pch = 16,                              
     cex = 1.2,                             
     cex.main = 1,                         
     cex.lab = 1,                           
     cex.axis = 0.9,
     xlim = c(0, max(x)*1.05),   
     ylim = c(0, max(y)*1.05)) 

# 4. Conjetura

#La distribución de los puntos sugiere un modelo con curva, a medida que aumenta la radiación solar, la precipitación disminuye de forma cada vez más rápida, lo que sugiere un modelo exponencial decreciente para describir el comportamiento entre ambas variables.

# 5. Cálculo de parámetros modelo exponencial
y1<-log(y)
regresionexponencial<- lm(y1~x)
# Ver los coeficientes (a,b)
beta0<- regresionexponencial$coefficients[1]
beta1<- regresionexponencial$coefficients[2]
b<- beta1
b
##         x 
## -0.200551
a<-exp(beta0)
a
## (Intercept) 
##    111.7808
# 6. Gráfica de dispersión modelo-realidad
plot(x, y,
     main = " Grafica No2:  Regresion lineal entre la precipitacion y radiacion solar 
     en el volcan Antisana en 2012 ",
     xlab = "Radiacion solar (J/m2)",      # Nombre eje X
     ylab = "Precipitacion (mm)",     # Nombre eje Y
     col = "pink",                        # Color de los puntos
     pch = 16,                              # Tipo de punto sólido
     cex = 1.2,                             # Tamaño de los puntos
     cex.main = 1,                          # Tamaño del título
     cex.lab = 1,                           # Tamaño de los ejes
     cex.axis = 0.9,
     xlim = c(0, max(x)*1.05),   
     ylim = c(0, max(y)*1.05))                        

curve(a*exp(b*x), from = 0,to=100,col="blue",add = TRUE)

# 7. Test de bondad
#Test de Pearson, coeficiente de correlación (relacion inversa)
r<- cor(x,y1)*100
r
## [1] -74.26949
# 8. Coeficiente de determinación muestral
r2<- r^2/100
r2
## [1] 55.15957
# 9. Restricciones
#Dominio [x]: D= {R+^0}
#Dominio [y]: D= {R+^0}
# ¿Existe algún valor en dominio de x que sustituido en el modelo matemático genere un valor en y fuera de su dominio?
#No existen restricciones para el uso del modelo exponencial, ya que tanto la radiación solar como la precipitación toman valores no negativos y el modelo, genera siempre valores positivos de precipitación. Además, al ser un modelo exponencial decreciente, la precipitación disminuye con el aumento de la radiación solar sin salirse de su dominio físico.

# 10. Aplicaciones del modelo
# La precipitación esperada cuando la radiación solar es de 25 (J/m2)
Precipitacion_esperada<- 112 * exp(-0.200551 * 25)
Precipitacion_esperada
## [1] 0.744326
# 11. Conclusión 
# Entre la radición solar en (J/m2) y precipitación en (mm) existe ralación tipo exponencial cuya ecuación o modelo es y= 112*e^-0.200551x donde x es la radiación solar, y es la precipitación, donde la precpitación depende en un 67.76% de la radiación solar y el 32.24% se debe a otros factores.

 # 4.1.4 Modelo logaritmico
# 1. Seleccionar dos variables

#y=a+bln(x)
datos_prom <- aggregate(Precipitation ~ Solar, data = datos, mean)
y<-datos_prom$Solar
x<-datos_prom$Precipitation
#Causa y efecto: La radiación solar es la causa porque regula la energía atmosférica, y la precipitación es el efecto, ya que varía en respuesta a los cambios en la radiación solar.

# 2. Tabla pares de valores (TVP)

TVP_radi_prec<-data.frame(x,y)
TVP_radi_prec %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 1*"),
    subtitle = md("**Pares de valores de precipitacion y radiacion solar, estudio del clima volcan Antisana en 2012 **")
  ) %>%
  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"
  )
Tabla Nro. 1
**Pares de valores de precipitacion y radiacion solar, estudio del clima volcan Antisana en 2012 **
x y
44.390 1.26
64.670 1.35
30.890 1.52
60.110 1.54
25.740 1.58
94.720 1.82
24.820 1.90
32.350 1.93
18.260 2.15
40.020 2.39
35.600 2.40
39.670 2.79
27.710 2.83
35.950 2.90
53.780 2.94
49.860 3.07
32.800 3.13
29.870 3.19
48.095 3.45
16.600 3.54
31.200 3.56
45.670 3.59
33.650 3.60
40.710 3.62
27.800 3.64
28.710 3.86
39.980 3.87
85.580 3.98
33.360 3.99
57.380 4.00
52.730 4.02
37.710 4.08
28.010 4.28
58.200 4.29
25.810 4.31
15.480 4.32
18.110 4.33
59.470 4.44
35.990 4.49
24.150 4.54
35.050 4.57
41.530 4.58
9.710 4.61
27.470 4.63
21.250 4.73
34.260 4.74
20.295 4.83
28.800 4.89
13.440 5.10
22.570 5.13
34.780 5.15
10.090 5.20
3.550 5.28
18.950 5.30
15.500 5.32
13.350 5.37
40.070 5.38
24.140 5.39
17.100 5.44
34.710 5.45
29.065 5.55
12.730 5.59
16.520 5.60
21.280 5.63
14.640 5.71
19.900 5.84
10.600 5.92
10.340 5.95
47.700 6.03
10.180 6.07
11.600 6.11
20.520 6.16
50.090 6.27
26.100 6.37
24.740 6.45
24.050 6.50
29.730 6.71
33.220 6.87
46.030 6.89
41.880 6.99
30.770 7.02
52.690 7.11
37.970 7.16
15.510 7.18
33.425 7.19
64.030 7.20
20.040 7.26
22.620 7.40
27.620 7.48
21.210 7.55
18.580 7.61
16.660 7.68
36.140 7.79
14.070 7.86
10.680 7.87
16.335 7.98
45.100 8.01
8.970 8.03
19.390 8.11
57.265 8.17
37.770 8.21
24.140 8.24
12.970 8.28
10.290 8.29
14.170 8.31
58.410 8.32
28.260 8.35
12.910 8.39
25.120 8.75
7.550 8.83
26.460 8.86
19.830 8.98
45.190 9.00
14.670 9.01
26.980 9.04
45.550 9.12
21.080 9.25
25.610 9.36
25.190 9.57
10.920 9.64
29.875 9.66
27.180 9.72
23.680 9.73
4.660 9.85
40.760 9.87
30.325 9.89
4.360 9.98
26.870 9.99
14.960 10.04
16.320 10.11
8.860 10.17
48.330 10.21
22.990 10.37
9.170 10.40
14.690 10.43
41.150 10.44
5.260 10.47
3.260 10.60
37.360 10.61
12.090 10.62
11.200 10.77
12.370 10.78
39.930 10.93
17.310 10.95
22.570 11.19
8.450 11.20
7.360 11.31
21.750 11.32
16.790 11.39
3.690 11.45
26.410 11.48
11.550 11.50
9.760 11.56
12.405 11.57
12.570 11.63
15.570 11.64
7.410 11.69
24.870 11.76
29.200 11.81
11.600 11.84
8.020 11.88
36.470 11.89
8.620 11.93
25.920 11.98
41.500 12.10
27.920 12.11
28.690 12.13
35.440 12.25
3.280 12.35
6.740 12.42
48.240 12.47
20.200 12.84
24.620 12.87
3.350 12.93
13.660 12.95
18.250 13.04
10.920 13.12
21.300 13.15
11.190 13.20
13.900 13.21
14.000 13.22
14.090 13.24
0.760 13.27
5.150 13.32
39.140 13.34
22.970 13.35
14.190 13.48
13.600 13.49
2.200 13.57
17.230 13.61
14.470 13.62
7.830 13.65
18.740 13.70
5.840 14.04
0.420 14.08
29.230 14.41
19.940 14.52
13.390 14.53
2.660 14.59
14.490 14.65
26.980 14.67
9.390 14.82
13.820 14.83
8.490 14.84
7.330 15.18
16.710 15.19
0.840 15.23
14.350 15.49
19.720 15.54
7.550 15.82
8.490 15.98
21.675 16.16
14.250 16.21
10.300 16.27
16.510 16.29
9.700 16.36
2.460 16.45
7.070 16.46
12.600 16.59
17.090 16.90
7.280 16.92
21.540 16.94
8.610 17.01
5.730 17.05
12.590 17.42
7.100 17.65
5.640 17.68
0.950 18.42
6.190 18.58
10.520 18.76
20.020 18.80
12.160 19.09
6.680 19.28
16.580 19.30
15.440 19.89
12.610 20.32
12.500 20.40
8.530 20.45
12.510 20.53
0.280 20.54
14.320 20.77
16.240 20.83
0.090 20.91
7.400 20.93
0.010 20.94
7.930 21.01
9.490 21.02
5.720 21.11
5.600 21.17
4.830 21.33
11.360 21.36
0.460 21.44
2.510 21.47
5.720 21.60
2.270 21.70
2.910 21.71
15.330 21.77
8.210 22.03
2.350 22.19
6.000 22.30
7.230 22.40
0.660 22.65
8.280 22.81
16.180 22.85
9.440 23.15
0.380 23.24
7.890 23.31
12.860 23.32
1.110 23.37
5.830 23.43
8.470 23.48
2.380 23.49
0.020 23.54
0.010 23.67
2.130 23.69
1.935 23.87
0.550 23.88
11.680 24.15
0.080 24.22
1.860 24.38
5.520 24.41
4.250 24.51
13.060 24.58
10.060 24.63
10.410 24.65
0.010 24.67
2.010 24.72
8.600 24.74
4.130 24.77
5.380 24.96
8.130 25.09
9.140 25.11
8.480 25.20
8.555 25.28
0.110 25.32
7.510 25.50
11.660 25.65
0.010 25.67
1.330 25.68
0.170 25.71
1.190 25.88
0.110 25.95
0.230 25.97
1.580 26.02
0.010 26.14
0.180 26.15
0.360 26.23
0.180 26.28
0.710 26.30
4.060 26.31
6.540 26.40
0.050 26.45
0.010 26.46
0.440 26.68
0.040 26.70
0.010 26.72
0.230 26.87
0.010 27.00
0.010 27.03
0.030 27.04
0.060 27.15
0.010 27.21
0.060 27.33
0.280 27.35
0.010 27.49
0.010 27.57
1.790 27.74
0.670 27.79
1.020 27.82
2.750 27.88
3.130 28.21
0.140 28.30
0.010 28.31
0.010 28.43
1.050 28.45
0.010 28.51
0.010 28.54
1.040 28.57
0.050 28.66
0.010 28.67
0.010 28.99
6.380 29.04
0.040 29.10
1.530 29.26
0.010 29.49
1.940 29.54
0.010 29.99
0.030 30.05
0.010 30.27
Autor: Grupo 1
# 3. Gráfica de dispersión 
plot(x, y,
     main = "Grafica No1:Diagrama de dispersion entre Precipitacion y Radiacion solar
     en el estudio clima en el volcan Antisana en 2012",
     xlab = "Precipitacion (mm)",      
     ylab = "Radiacion solar (J/m2)",     
     col = "green",                        
     pch = 16,                              
     cex = 1.2,                             
     cex.main = 1,                          
     cex.lab = 1,                          
     cex.axis = 0.9,
     xlim = c(0, max(x)*1.05),   
     ylim = c(0, max(y)*1.05)) 

# 4. Conjetura

#La distribución de los puntos evidencia una curva decreciente, los datos sugiere un modelo logarítmico debido a que la precipitación muestra un descenso abrupto inicial que se estabiliza gradualmente conforme aumenta la radiación solar, formando una curva asintótica.

# 5. Cálculo de parámetros modelo logaritmico

x1<- log(x)
regresionlogaritmica<- lm(y~x1)
# Ver los coeficientes (a,b)

a<- regresionlogaritmica$coefficients[1]
a
## (Intercept) 
##     19.4988
b<-regresionlogaritmica$coefficients[2]
b
##        x1 
## -2.750401
# 6. Gráfica de dispersión modelo-realidad
plot(x, y,
     main = " Grafica No2:  Regresion lineal entre la Precipitacion y Radiacion solar 
     en el volcan Antisana en 2012 ",
     xlab = "Precipitacion (mm)",      # Nombre eje X
     ylab = "Radiacion solar (J/m2)",     # Nombre eje Y
     col = "green",                        # Color de los puntos
     pch = 16,                              # Tipo de punto sólido
     cex = 1.2,                             # Tamaño de los puntos
     cex.main = 1,                          # Tamaño del título
     cex.lab = 1,                           # Tamaño de los ejes
     cex.axis = 0.9,
     xlim = c(0, max(x)*1.05),   
     ylim = c(0, max(y)*1.05))                        

curve(a + b * log(x),
      n = 500,          # curva suave
      add = TRUE,
      col = "blue",
      lwd = 2)

# 7. Test de bondad
#Test de Pearson, coeficiente de correlación
r<- cor(x1,y)*100
r
## [1] -74.26949
# 8. Coeficiente de determinación muestral
r2<- r^2/100
r2
## [1] 55.15957
# 9. Restricciones
#Dominio [x]: D= {R+^0}
#Dominio [y]: D= {R+^0}
# ¿Existe algún valor en dominio de x que sustituido en el modelo matemático genere un valor en y fuera de su dominio?
# El modelo es válido únicamente para valores de radiación en el intervalo 0 < x <= 1201,2. Las restricciones principales son que (x) no puede ser 0 porque el logaritmo natural de cero no existe (indeterminado), y (x) no puede ser mayor a 1201.2 porque el modelo empezaría a predecir valores de precipitación negativos (y < 0), lo cual es físicamente imposible en este contexto meteorológico.

# 10. Aplicaciones del modelo
# La radiación esperada cuando la precipitación es de 60 (mm)
Radiación_esperada<- 19.4988-2.750401*log(60)
Radiación_esperada
## [1] 8.237711
# 11. Conclusión 
# Entre radiación solar (J/m2) y precipitación (mm) existe una relación tipo logaritmica cuya ecuación o modelo es 19.4988 - 2.750401 * log(x), siendo y= Radiación molar y x= Precipitación, donde la radiación solar depende en un 74.26% de las precipitaciones y el 25.74% se debe a otros factores. El modelo presenta restricciones y funciona con precipitaciones > 0 mm de agua  y para valores menores o iguales a 1201.2 mm de agua 

# 4.2 Regresión Multiple
# 4.2.1 Modelo lineal
#Carga de paquetes
library(scatterplot3d)
library(gt)
library(dplyr)
# 1. Seleccionar tres variables

datos<-read.csv("weatherdataANTISANA.csv", header = TRUE, dec = ".",
                sep = ",")
#y=c+bx2+ax1

y <- datos$Max.Temperature
x1 <- datos$Relative.Humidity
x2<-datos$Solar
#Causa y efecto: El aumento de la Radiación solar (y) y la reducción de la Humedad (x) actúan como las causas principales que elevan la Máxima temperatura (z), debido a que un cielo más seco permite que la energía solar caliente la superficie de manera más directa y eficiente

# 2. Tabla de tripleta de valores (TTP)

TTP<-data.frame(x1,x2,y)
TTP %>%
  gt() %>%
  tab_header(
    title = md("*Tabla Nro. 1*"),
    subtitle = md("**Tripleta de valores de la temperatura mínima, humedad y radiación solar en un estudio del clima volcán Antisana en 2012 **")
  ) %>%
  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"
  )
Tabla Nro. 1
**Tripleta de valores de la temperatura mínima, humedad y radiación solar en un estudio del clima volcán Antisana en 2012 **
x1 x2 y
0.93 15.98 16.10
0.96 12.25 15.50
0.98 4.58 11.55
0.99 4.32 12.02
0.98 3.86 11.73
0.97 9.57 12.11
0.98 10.93 13.06
0.99 2.40 11.53
0.99 5.32 12.95
0.98 7.19 13.38
0.98 6.71 12.99
0.96 10.77 17.40
0.96 9.66 15.88
0.98 5.37 13.65
0.99 4.02 13.07
0.97 9.64 13.81
0.98 8.11 13.02
0.99 3.19 12.31
0.99 3.64 12.73
0.98 5.60 12.17
0.97 8.75 12.54
0.99 4.57 11.78
0.99 1.52 10.51
0.99 1.93 10.32
0.97 10.43 12.81
0.99 3.60 11.91
0.98 6.45 13.18
0.99 1.35 11.57
0.98 5.55 11.94
0.99 6.50 12.39
0.98 6.87 13.27
0.98 8.17 13.38
0.99 1.58 11.58
0.98 5.28 12.85
0.97 10.11 14.18
0.98 8.24 14.65
0.99 1.90 12.42
0.97 6.07 13.84
0.98 7.16 13.48
0.97 7.87 14.34
0.96 11.57 14.38
0.99 2.15 11.13
0.97 8.31 12.91
0.98 6.11 11.59
0.97 8.86 12.47
0.98 5.92 11.55
0.97 5.95 12.14
0.98 5.10 10.73
0.98 4.00 11.42
0.97 8.01 12.26
0.99 4.08 11.38
0.99 3.59 12.04
0.99 2.83 10.83
0.99 2.90 10.99
0.99 3.07 11.43
0.99 1.82 11.41
0.99 1.54 11.05
0.98 4.28 11.56
0.99 6.99 12.24
0.98 6.89 12.80
0.97 9.89 14.44
0.95 11.45 17.04
0.94 8.35 16.21
0.95 5.44 14.15
0.98 4.63 12.85
0.96 9.72 14.69
0.95 11.63 17.98
0.92 16.16 17.10
0.90 20.53 18.81
0.90 13.70 15.57
0.90 17.42 17.53
0.90 16.27 17.50
0.92 18.80 19.00
0.94 14.41 16.85
0.94 14.52 17.11
0.94 13.32 17.07
0.97 8.32 14.42
0.99 3.98 13.91
0.99 4.49 11.73
0.99 2.39 11.71
0.99 7.02 12.45
0.99 4.29 12.23
0.99 7.79 13.20
0.99 4.83 12.81
0.99 5.59 12.19
0.98 8.29 12.93
0.98 4.73 12.92
0.98 4.83 14.30
0.96 11.93 15.56
0.92 14.83 18.25
0.93 12.42 15.47
0.94 13.34 16.30
0.94 13.22 16.92
0.94 11.89 15.52
0.99 4.44 12.28
0.99 3.45 11.86
0.98 5.38 13.75
0.98 7.20 13.52
0.98 4.74 10.97
0.95 8.03 13.76
0.95 10.47 12.32
0.90 16.45 14.53
0.91 10.60 13.10
0.96 11.69 13.70
0.95 10.17 14.20
0.92 11.57 13.42
0.99 4.33 11.81
0.99 5.45 12.39
0.99 3.56 12.24
0.97 7.98 14.56
0.97 9.87 13.90
0.98 10.95 14.77
0.98 7.18 13.07
0.95 11.98 15.19
0.99 8.21 14.36
0.93 16.90 17.63
0.98 3.87 14.35
0.98 9.73 14.36
0.98 5.13 13.42
0.99 3.54 12.37
0.98 7.40 13.71
0.97 7.61 14.26
0.92 13.65 15.88
0.87 21.70 17.35
0.89 16.46 16.22
0.92 14.53 14.77
0.94 11.31 15.35
0.92 12.95 15.15
0.90 13.57 16.49
0.91 12.13 15.26
0.92 15.54 16.23
0.96 11.48 14.93
0.98 6.16 14.18
0.98 5.63 13.50
0.93 14.65 17.12
0.94 10.78 15.33
0.94 13.21 18.85
0.93 16.16 17.26
0.97 11.76 14.43
0.99 4.89 12.55
0.97 4.61 15.70
0.96 7.98 14.04
0.93 13.62 16.14
0.91 18.58 16.67
0.88 25.28 17.34
0.87 24.96 19.19
0.88 25.11 18.76
0.83 26.70 20.24
0.85 21.17 20.09
0.84 21.44 18.54
0.81 24.41 18.68
0.78 26.23 19.89
0.81 23.67 18.43
0.85 16.36 18.98
0.90 15.49 16.35
0.88 21.36 17.08
0.92 19.28 17.26
0.85 25.20 17.44
0.82 25.88 19.12
0.85 22.03 17.09
0.84 24.51 17.64
0.77 25.95 19.02
0.80 24.77 19.65
0.86 22.40 16.46
0.83 24.38 16.26
0.84 14.84 16.16
0.84 21.01 16.79
0.89 16.21 15.58
0.88 21.77 16.27
0.90 20.93 16.00
0.89 17.68 15.21
0.87 20.32 19.65
0.90 19.89 16.57
0.79 26.28 19.16
0.75 20.91 18.09
0.81 15.23 18.03
0.85 23.15 15.83
0.79 23.24 17.46
0.72 25.32 17.67
0.77 24.51 16.63
0.88 12.93 15.50
0.85 23.49 16.79
0.76 20.54 19.42
0.73 26.46 20.59
0.76 23.87 18.13
0.81 22.65 16.34
0.87 14.82 16.26
0.86 22.19 16.80
0.81 21.11 17.32
0.73 26.14 20.88
0.77 25.97 18.58
0.78 23.48 18.67
0.86 23.31 17.66
0.84 24.58 16.55
0.78 24.72 17.46
0.81 22.81 16.51
0.80 24.74 17.63
0.77 26.30 19.27
0.71 26.68 19.19
0.66 25.67 21.32
0.67 27.03 21.00
0.72 21.33 17.72
0.71 21.60 18.12
0.68 27.15 21.21
0.63 27.00 20.38
0.69 26.87 19.82
0.64 27.49 21.56
0.63 27.57 21.51
0.68 25.71 19.87
0.70 26.45 22.60
0.73 21.47 18.15
0.74 26.02 21.06
0.74 23.87 19.74
0.68 25.68 20.39
0.71 25.50 18.06
0.78 21.02 17.88
0.84 24.63 19.26
0.72 27.04 20.71
0.56 27.21 18.95
0.62 27.82 17.64
0.62 28.31 19.24
0.58 28.43 21.20
0.71 23.69 18.99
0.79 23.32 18.60
0.89 13.49 16.81
0.89 20.40 16.94
0.86 14.08 17.44
0.84 18.42 17.27
0.82 21.71 17.40
0.91 12.10 16.37
0.86 22.30 17.60
0.75 28.54 19.69
0.72 28.45 19.10
0.68 28.67 20.61
0.74 28.30 18.10
0.73 28.57 17.79
0.72 28.66 18.00
0.67 28.51 20.83
0.65 26.72 22.34
0.68 24.67 21.30
0.67 28.99 23.47
0.72 20.94 19.11
0.66 27.35 22.96
0.63 26.15 20.48
0.62 29.49 21.47
0.63 23.54 20.39
0.66 24.22 18.32
0.64 27.74 18.56
0.65 23.88 20.02
0.63 29.54 20.89
0.74 25.65 18.82
0.75 26.40 20.48
0.64 29.99 23.42
0.64 29.10 19.31
0.66 30.05 22.04
0.69 27.33 19.40
0.64 30.27 23.79
0.70 27.88 21.01
0.69 29.26 19.79
0.69 26.31 17.86
0.78 25.28 17.67
0.90 16.94 16.78
0.87 25.09 17.85
0.90 18.76 17.49
0.92 17.01 16.46
0.88 24.15 18.33
0.86 19.89 17.39
0.93 12.87 15.34
0.92 20.83 16.45
0.77 27.79 19.00
0.87 13.61 17.11
0.89 16.59 16.80
0.82 28.21 18.20
0.78 29.04 20.20
0.85 20.77 17.60
0.87 22.85 16.89
0.89 24.65 16.29
0.88 16.29 16.26
0.99 1.26 10.99
0.97 7.55 12.66
0.96 12.11 15.47
0.98 5.30 13.82
0.97 9.01 15.20
0.98 12.84 14.06
0.98 13.35 13.94
0.98 9.25 14.15
0.99 6.27 13.32
0.96 11.19 14.75
0.97 13.04 15.17
0.99 3.62 12.79
0.99 3.59 11.35
0.98 8.39 12.74
0.98 10.04 12.82
0.90 15.18 16.27
0.97 10.40 14.66
0.94 17.05 15.87
0.93 19.09 15.81
0.97 11.32 13.80
0.97 7.11 15.02
0.96 13.48 16.01
0.92 14.67 17.23
0.92 20.45 16.83
0.96 13.20 15.29
0.98 10.21 13.90
0.99 5.55 13.43
0.97 11.93 14.55
0.96 13.24 15.19
0.97 13.15 15.61
0.99 5.84 12.55
0.97 9.66 14.36
0.98 3.99 13.20
0.99 5.15 12.71
0.95 13.12 15.60
0.99 7.19 13.93
0.99 2.79 12.49
0.98 8.17 13.75
0.98 7.26 13.09
0.97 9.12 14.87
0.99 10.44 13.98
0.97 11.50 14.85
0.93 23.43 15.32
0.91 16.92 15.52
0.94 15.19 15.95
0.99 4.54 13.00
0.99 3.13 13.62
0.99 2.94 13.57
0.99 8.98 13.81
0.98 9.89 14.39
0.99 3.45 13.06
0.98 9.99 15.19
0.98 4.31 13.69
0.97 9.00 15.04
0.98 10.37 13.39
0.96 10.61 14.27
0.97 5.39 11.88
0.96 11.20 14.25
0.96 8.83 13.24
0.90 23.37 14.99
0.94 11.88 13.88
0.97 8.28 12.86
0.91 14.59 15.73
0.92 11.84 15.78
0.96 11.56 15.75
0.91 13.27 18.26
0.88 19.30 18.82
0.98 9.04 14.77
0.98 7.86 13.58
0.95 12.35 13.96
0.91 17.65 15.20
0.93 15.82 15.10
0.95 9.98 14.00
0.96 10.62 13.25
0.96 11.39 13.85
0.97 6.37 13.19
0.98 9.36 14.44
0.98 6.03 13.40
0.98 5.20 13.45
0.95 12.47 17.23
0.98 7.48 14.27
0.97 11.81 15.65
0.98 7.68 13.97
0.96 10.47 15.41
0.95 9.85 16.39
0.93 14.04 16.21
0.94 11.64 16.63
0.97 5.71 13.17
Autor: Grupo 1
# 3. Gráfica de dispersión (solo puntos)
regresion <- scatterplot3d(
  x1, x2, y,
  main = "Gráfica No 1: Diagrama de dispersión entre la humedad, radiación solar y 
  máxima temperatura en el estudio del clima en el volcán Antisana en 2012",
  xlab = "Humedad (%)",
  ylab = "Radiación solar (J/m2)",
  zlab = "Máxima temperatura (°C)",
  color = "orange",
  pch = 16   # puntos sólidos
)

# 4. Conjetura

#La distribución de los puntos muestra un modelo de plano (tipo rampa) porque que la temperatura máxima depende simultáneamente de la radiación y la humedad, revelando una tendencia ascendente conforme la radiación aumenta y la humedad disminuye, o viseversa.

# 5. Ajuste del modelo
regresionmultiple<- lm(y~x1+x2)
regresionmultiple
## 
## Call:
## lm(formula = y ~ x1 + x2)
## 
## Coefficients:
## (Intercept)           x1           x2  
##     18.8300      -7.1563       0.2297
#Coeficientes
a<-regresionmultiple$coefficients[2]
a
##        x1 
## -7.156262
b<-regresionmultiple$coefficients[3]
b
##        x2 
## 0.2296685
c<- regresionmultiple$coefficients[1]
c
## (Intercept) 
##    18.83003
# 6. Gráfica de dispersión modelo-realidad

regresion<- scatterplot3d(x1,x2,y,angle = 225, main = "Gráfica No2: Regresión lineal entre la humedad, radiación solar y 
máxima temperatura en el estudio del clima en el volcán Antisana en 2012",
                          xlab = "Humendad (%)",ylab = "Radiación solar (J/m2)",zlab = "Máxima temperatura (°C)",
                          color = "orange",pch = 16)     

regresion$plane3d(regresionmultiple)

# 7. Test de bondad
#Test de Pearson, coeficiente de correlación
r<- cor(y,x1+x2)*100
r
## [1] 90.79502
# 8. Coeficiente de determinación muestral
r2<- r^2/100
r2
## [1] 82.43737
# 9. Restricciones
#Dominio [x1]: D= {0,1}
#Dominio [y]: D= {R}
#Dominio [x2]: D= {R+^0} 
# ¿Existe algún valor en dominio de x1,x2 que sustituido en el modelo matemático genere un valor en y fuera de su dominio?
#No existen valores de x1,x2 que generen resultados fuera del dominio de y. Todos los valores permitidos para x1 y x2 son consistentes con el dominio físico y matemático del modelo, por lo que la ecuación siempre produce resultados válidos.

# 10. Aplicaciones del modelo
# Que temperatura máxima espero cuando tenemos un radiación solar de 15(J/m2) y una humedad de 0.7 (%)
Temperatura_esperada<- 18.83003+0.2296685*15-7.156262*0.7
Temperatura_esperada
## [1] 17.26567
  1. Conclusión Entre temperatura mínimama (°C), radiación solar (J/m2) y humedad (%) existe la relación tipo lineal cuya ecuación es y= 18.83003+0.2296685x2-7.156262x1 siendo y= mínima temperatura (°C), x2= radiación solar (J/m2) y x1= humedad (%),donde no existe restricciones y podemos afirmar que la temperaatura mínima esta influenciada en un 82.43% de la radiación solar y la humedad, el 17.57% se debe a otros factores. Por ejemplo cuando la radiación vale 15 (J/m2) y la humedad de 0.7 (%) obtenemos una temperatura de 17.26567 (°C).