library(ncdf4)
library(readxl)
library(openxlsx)
library(sf)
library(tidyverse)
library(corrplot)
library(hydroTSM)
library(plotly)
knitr::opts_chunk$set(echo = TRUE)Data PISCO y datos crudos
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)