Nothing
## ----include=FALSE------------------------------------------------------------
# rmarkdown::render("vignettes/daily.Rmd")
# rmarkdown::render("vignettes/daily.Rmd", rmarkdown::github_document())
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup--------------------------------------------------------------------
library(GHCNr)
library(terra) # for handling countries geometries
## ----download-inventory, eval=FALSE-------------------------------------------
# inventory_file <- download_inventory("~/Downloads/ghcn-inventory.txt")
# s <- stations(
# inventory_file,
# variables = "TMAX",
# first_year = 1990,
# last_year = 2000
# )
## ----read-inventory, eval=FALSE-----------------------------------------------
# s <- stations(variables = "TMAX", first_year = 1990, last_year = 2000)
# s
# # A tibble: 16,763 × 6
# station latitude longitude variable firstYear lastYear
# <chr> <dbl> <dbl> <chr> <dbl> <dbl>
# 1 AE000041196 25.3 55.5 TMAX 1944 2024
# 2 AEM00041194 25.3 55.4 TMAX 1983 2024
# 3 AEM00041217 24.4 54.7 TMAX 1983 2024
# 4 AFM00040938 34.2 62.2 TMAX 1973 2020
# 5 AFM00040948 34.6 69.2 TMAX 1966 2021
# 6 AFM00040990 31.5 65.8 TMAX 1973 2020
# 7 AG000060390 36.7 3.25 TMAX 1940 2024
# 8 AG000060590 30.6 2.87 TMAX 1940 2024
# 9 AG000060611 28.0 9.63 TMAX 1958 2024
# 10 AG000060680 22.8 5.43 TMAX 1940 2004
# # ℹ 16,753 more rows
# # ℹ Use `print(n = ...)` to see more rows
## ----filter-by-year, eval=FALSE-----------------------------------------------
#
# Spatial filters can also be easily applied.
# Spatial boundaries of countries can be downloaded from <https://www.geoboundaries.org/> using the `get_countr(couuntry_code = ...)` function, where `country_code` is the ISO3 code.
## ----get-country, eval=FALSE--------------------------------------------------
# italy <- get_country("ITA")
## ----spatial-filter, eval=FALSE-----------------------------------------------
# s <- filter_stations(s, italy)
# s
# # A tibble: 41 × 6
# station latitude longitude variable firstYear lastYear
# <chr> <dbl> <dbl> <chr> <dbl> <dbl>
# 1 IT000016090 45.4 10.9 TMAX 1951 2024
# 2 IT000016134 44.2 10.7 TMAX 1951 2024
# 3 IT000016232 42 15 TMAX 1975 2024
# 4 IT000016239 41.8 12.6 TMAX 1951 2024
# 5 IT000016320 40.6 17.9 TMAX 1951 2024
# 6 IT000016560 39.2 9.05 TMAX 1951 2024
# 7 IT000160220 46.2 11.0 TMAX 1951 2024
# 8 IT000162240 42.1 12.2 TMAX 1954 2024
# 9 IT000162580 41.7 16.0 TMAX 1951 2024
# 10 ITE00100554 45.5 9.19 TMAX 1763 2008
# # ℹ 31 more rows
# # ℹ Use `print(n = ...)` to see more rows
## ----daily, eval=FALSE--------------------------------------------------------
# daily_ts <- daily(
# station_id = "CA003076680",
# start_date = paste("2002", "11", "01", sep = "-"),
# end_date = paste("2024", "04", "22", sep = "-"),
# variables = "tmax"
# )
# daily_ts
## ----daily-saved, echo=FALSE--------------------------------------------------
daily_ts <- CA003076680[, c("date", "station", "tmax", "tmax_flag")]
daily_ts
## ----multidaily, eval=FALSE---------------------------------------------------
# daily_ts <- daily(
# station_id = c("CA003076680", "USC00010655"),
# start_date = paste("2002", "11", "01", sep = "-"),
# end_date = paste("2024", "04", "22", sep = "-"),
# variables = "tmax"
# )
# plot(daily_ts, "tmax")
## ----multidaily-saved, echo=FALSE---------------------------------------------
daily_ts <- rbind(CA003076680, USC00010655)[, c("date", "station", "tmax", "tmax_flag")]
plot(daily_ts, "tmax")
## ----flags, echo=FALSE--------------------------------------------------------
as.list(GHCNr:::.flags(strict = TRUE))
## ----flags-strict, echo=FALSE-------------------------------------------------
as.list(GHCNr:::.flags(strict = FALSE))
## ----remove-flagged-----------------------------------------------------------
daily_ts <- remove_flagged(daily_ts)
plot(daily_ts, "tmax")
## ----daily-coverage-----------------------------------------------------------
station_coverage <- coverage(daily_ts)
station_coverage
## ----low-coverage-------------------------------------------------------------
unique(station_coverage[
station_coverage$annual_coverage_tmax < .95,
c("station", "year", "annual_coverage_tmax")
])
## ----monthly------------------------------------------------------------------
monthly_ts <- monthly(daily_ts)
monthly_ts
plot(monthly_ts, "tmax")
## ----quarterly----------------------------------------------------------------
quarterly_ts <- quarterly(daily_ts)
quarterly_ts
plot(quarterly_ts, "tmax")
## ----annual-------------------------------------------------------------------
annual_ts <- annual(daily_ts)
annual_ts
plot(annual_ts, "tmax")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.