Data PISCO y datos crudos

Author

Bryan Quispe

library(ncdf4)
library(readxl)
library(openxlsx)
library(sf)
library(tidyverse)
library(corrplot)
library(hydroTSM)
library(plotly)

knitr::opts_chunk$set(echo = TRUE)

Cargando las fuentes de datos:

# Primero el directorio de trabajo:
setwd("C:/Users/BryanQuispe/Downloads/DATOS_pisco/")

Datos PISCO:

Se descargó datos satelitales PISCO, los cuales se encuentran en formato netCDF. La data es

# Coordenadas de extracción
ce <- data.frame(
  X = c(-70.526028,-70.549381),
  Y = c(-16.617942,-16.843858))

# leyendo los datos raster del netcdf:
raster_pp <- raster::brick("PISCOpm.nc")

# Pasando a spatial points:
sp::coordinates(ce) <- ~X+Y
raster::projection(ce) <- raster::projection(raster_pp)
# Realizando el ploteo:

raster::plot(raster_pp[[50]],
             ext = c(-71,-17.5,
                     -70,-16),
             col=c("#F7FBFF", "#DEEBF7",
                   "#C6DBEF", "#9ECAE1",
                   "#6BAED6", "#4292C6",
                   "#2171B5","#08519C",
                   "#08306B"),
             main = "Datos PISCO")
raster::plot(ce,cex =1, pch=19,col="red",
             add = TRUE)

# Obteniendo el valor de celdas:
cells <- raster::extract(
  raster_pp[[1]],ce, cellnumbers=T)[,1]

# Extracción de datos pisco por coordenadas:
data_cord<-t(raster_pp[cells]) %>% 
  as.data.frame() %>% 
  mutate(fecha = seq(
    as.Date("1981-01-01"),
    as.Date("2016-12-31"),
    "months"))
colnames(data_cord) <- c(
  "SENAMHI","ANA","fecha")

Datos de estaciones

# de la página del senamhi:
raw_st <- read.csv(
  "umalzo_crudo.csv") %>% 
  select(fecha,pp) %>% 
  mutate(fecha = as.Date(
    paste0(fecha,"-01"),
    format = "%m/%d/%Y")) %>%
  mutate(fecha = format(
    fecha, format = "%Y-%m")) %>% 
  reframe(pp = sum(pp, na.rm = T),
          .by = fecha) %>% 
  mutate(fecha = as.Date(
    paste0(fecha,"-01"),
    format = "%Y-%m-%d"),
    fuente = "SENAMHI")

# De la plataforma andrea:
raw_st2 <- read.csv(
  "umalzo_cruto_andrea.csv")[,-1]
names(raw_st2) <- c(
  "año","01","02","03",
  "04","05","06","07",
  "08","09","10","11","12")

raw_st2 <- raw_st2 %>% 
  pivot_longer(names_to = "meses",
               values_to = "pp",
               cols = 2:13) %>% 
  mutate(fecha = as.Date(
    paste(año,meses,"01",
          sep = "-"),
    format = "%Y-%m-%d"),
    fuente = "ANA") %>% 
  dplyr::select(fecha,pp,fuente)

# preparando los datasets:
pisco_smhi <- data.frame(
  fecha = data_cord$fecha,
  pp = data_cord$SENAMHI,
  fuente = "PISCO_S")

pisco_ndrea <- data.frame(
  fecha = data_cord$fecha,
  pp = data_cord$ANA,
  fuente = "PISCO_A")

tabla <- rbind(
  raw_st,raw_st2,
  pisco_ndrea,
  pisco_smhi)

ggplotly(
  ggplot(data=tabla,
         aes(x=fecha,
             y=pp,
             color = fuente))+
    geom_line()+
    theme_minimal()+
    labs(title = " Comparación de Estaciones",
          x = "Fecha",
         y = "Precipitación (mm/mes)",
         color = "Fuente de\ndatos"))

Correlación entre estaciones:

tabla <- tabla %>% 
  pivot_wider(
    names_from = fuente,
    values_from = pp)

tabla <- xts(tabla[2:5], tabla$fecha)
K <- cor(tabla, use = 'complete.obs', method = 'kendall')
corrplot(K, method = 'circle', type = 'lower', diag = F)

corrplot(K, method = 'number', type = 'lower', diag = F)