From abf4cdd6b18aff062aa97a2b95809d644f8409f1 Mon Sep 17 00:00:00 2001 From: Richard Martin-Nielsen Date: Thu, 16 Sep 2021 20:24:28 +0300 Subject: [PATCH] Initial implementation of a generic json_reader function and download_JSON method --- DESCRIPTION | 2 +- NAMESPACE | 1 + R/shared-methods.R | 14 ++++++++++++++ R/utils.R | 24 ++++++++++++++++++++++++ man/Belgium.Rd | 1 + man/Brazil.Rd | 1 + man/Canada.Rd | 1 + man/Colombia.Rd | 1 + man/CountryDataClass.Rd | 1 + man/Covid19DataHub.Rd | 1 + man/Cuba.Rd | 1 + man/DataClass.Rd | 14 ++++++++++++++ man/ECDC.Rd | 1 + man/France.Rd | 1 + man/Germany.Rd | 1 + man/Google.Rd | 1 + man/India.Rd | 1 + man/Italy.Rd | 1 + man/JHU.Rd | 1 + man/JRC.Rd | 1 + man/Lithuania.Rd | 1 + man/Mexico.Rd | 1 + man/Netherlands.Rd | 1 + man/SouthAfrica.Rd | 1 + man/Switzerland.Rd | 1 + man/UK.Rd | 1 + man/USA.Rd | 1 + man/WHO.Rd | 1 + man/json_reader.Rd | 23 +++++++++++++++++++++++ 29 files changed, 100 insertions(+), 1 deletion(-) create mode 100644 man/json_reader.Rd diff --git a/DESCRIPTION b/DESCRIPTION index 86fd1d5f..f6529692 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -121,4 +121,4 @@ Encoding: UTF-8 Language: en-gb LazyData: true Roxygen: list(markdown = TRUE) -RoxygenNote: 7.1.1 +RoxygenNote: 7.1.2 diff --git a/NAMESPACE b/NAMESPACE index ce3bcc43..58d7719e 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -79,6 +79,7 @@ importFrom(httr,GET) importFrom(httr,POST) importFrom(httr,content) importFrom(httr,status_code) +importFrom(jsonlite,fromJSON) importFrom(lifecycle,deprecate_warn) importFrom(lifecycle,deprecated) importFrom(lifecycle,is_present) diff --git a/R/shared-methods.R b/R/shared-methods.R index bd7eff52..3b413380 100644 --- a/R/shared-methods.R +++ b/R/shared-methods.R @@ -302,6 +302,20 @@ DataClass <- R6::R6Class( ) }, + #' @description Download raw data from `data_urls`, stores a named list + #' of the `data_url` name and the corresponding raw data table in + #' `data$raw`. Designed as a drop-in replacement for `download` so + #' it can be used in sub-classes. + #' @importFrom purrr map + download_JSON = function() { + if (length(self$data_urls) == 0) { + stop("No data to download as data_urls is empty") + } + self$data$raw <- map(self$data_urls, json_reader, + verbose = self$verbose + ) + }, + #' @description Cleans raw data (corrects format, converts column types, #' etc). Works on raw data and so should be called after #' \href{#method-download}{\code{download()}} diff --git a/R/utils.R b/R/utils.R index 276f6613..da992a3d 100644 --- a/R/utils.R +++ b/R/utils.R @@ -53,6 +53,30 @@ csv_reader <- function(file, verbose = FALSE, guess_max = 1000, ...) { return(tibble(data)) } +#' Custom JSON reading function +#' +#' @description Checks for use of memoise and then uses vroom::vroom. +#' @param file A URL or filepath to a JSON +#' @param ... extra parameters to be passed to jsonlite::fromJSON +#' @inheritParams message_verbose +#' @return A data table +#' @importFrom tibble tibble +#' @importFrom jsonlite fromJSON +#' @concept utility +json_reader <- function(file, verbose = FALSE, ...) { + if (verbose) { + message("Downloading data from ", file) + data <- fromJSON(file, ...) + } else { + data <- suppressWarnings( + suppressMessages( + fromJSON(file, ...) + ) + ) + } + return(tibble(data)) +} + #' Wrapper for message #' #' @description A wrapper for `message` that only prints output when diff --git a/man/Belgium.Rd b/man/Belgium.Rd index 16578b4d..e8f93f4f 100644 --- a/man/Belgium.Rd +++ b/man/Belgium.Rd @@ -88,6 +88,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean_common}{\code{covidregionaldata::DataClass$clean_common()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/Brazil.Rd b/man/Brazil.Rd index 1016a6aa..fdc4e241 100644 --- a/man/Brazil.Rd +++ b/man/Brazil.Rd @@ -84,6 +84,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/Canada.Rd b/man/Canada.Rd index 022d5277..6e71c605 100644 --- a/man/Canada.Rd +++ b/man/Canada.Rd @@ -79,6 +79,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/Colombia.Rd b/man/Colombia.Rd index e8ff1a8d..cde549ca 100644 --- a/man/Colombia.Rd +++ b/man/Colombia.Rd @@ -78,6 +78,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/CountryDataClass.Rd b/man/CountryDataClass.Rd index f6b5ae67..3c4bc56a 100644 --- a/man/CountryDataClass.Rd +++ b/man/CountryDataClass.Rd @@ -46,6 +46,7 @@ Defaults to the country level of the data.} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean_common}{\code{covidregionaldata::DataClass$clean_common()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} diff --git a/man/Covid19DataHub.Rd b/man/Covid19DataHub.Rd index b305691f..b5e276e2 100644 --- a/man/Covid19DataHub.Rd +++ b/man/Covid19DataHub.Rd @@ -134,6 +134,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} diff --git a/man/Cuba.Rd b/man/Cuba.Rd index 4b688582..c488b553 100644 --- a/man/Cuba.Rd +++ b/man/Cuba.Rd @@ -78,6 +78,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/DataClass.Rd b/man/DataClass.Rd index 191071a1..7fa7793b 100644 --- a/man/DataClass.Rd +++ b/man/DataClass.Rd @@ -104,6 +104,7 @@ Defaults to the target level.} \item \href{#method-set_region_codes}{\code{DataClass$set_region_codes()}} \item \href{#method-new}{\code{DataClass$new()}} \item \href{#method-download}{\code{DataClass$download()}} +\item \href{#method-download_JSON}{\code{DataClass$download_JSON()}} \item \href{#method-clean}{\code{DataClass$clean()}} \item \href{#method-clean_common}{\code{DataClass$clean_common()}} \item \href{#method-available_regions}{\code{DataClass$available_regions()}} @@ -203,6 +204,19 @@ of the \code{data_url} name and the corresponding raw data table in \if{html}{\out{
}}\preformatted{DataClass$download()}\if{html}{\out{
}} } +} +\if{html}{\out{
}} +\if{html}{\out{}} +\if{latex}{\out{\hypertarget{method-download_JSON}{}}} +\subsection{Method \code{download_JSON()}}{ +Download raw data from \code{data_urls}, stores a named list +of the \code{data_url} name and the corresponding raw data table in +\code{data$raw}. Designed as a drop-in replacement for \code{download} so +it can be used in sub-classes. +\subsection{Usage}{ +\if{html}{\out{
}}\preformatted{DataClass$download_JSON()}\if{html}{\out{
}} +} + } \if{html}{\out{
}} \if{html}{\out{}} diff --git a/man/ECDC.Rd b/man/ECDC.Rd index 7b501efb..d7cc9bcb 100644 --- a/man/ECDC.Rd +++ b/man/ECDC.Rd @@ -69,6 +69,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} diff --git a/man/France.Rd b/man/France.Rd index fb3d2b12..c90e1ae5 100644 --- a/man/France.Rd +++ b/man/France.Rd @@ -85,6 +85,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean_common}{\code{covidregionaldata::DataClass$clean_common()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/Germany.Rd b/man/Germany.Rd index bca080b9..951a3cd5 100644 --- a/man/Germany.Rd +++ b/man/Germany.Rd @@ -81,6 +81,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/Google.Rd b/man/Google.Rd index a4ff31af..b6fc5ed5 100644 --- a/man/Google.Rd +++ b/man/Google.Rd @@ -126,6 +126,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-return}{\code{covidregionaldata::DataClass$return()}}\out{} diff --git a/man/India.Rd b/man/India.Rd index d676bd92..7045947b 100644 --- a/man/India.Rd +++ b/man/India.Rd @@ -79,6 +79,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/Italy.Rd b/man/Italy.Rd index 1c527c0a..530a6ec5 100644 --- a/man/Italy.Rd +++ b/man/Italy.Rd @@ -79,6 +79,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/JHU.Rd b/man/JHU.Rd index 53e56a88..519833c6 100644 --- a/man/JHU.Rd +++ b/man/JHU.Rd @@ -130,6 +130,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} diff --git a/man/JRC.Rd b/man/JRC.Rd index 50cdcac7..19073ba5 100644 --- a/man/JRC.Rd +++ b/man/JRC.Rd @@ -82,6 +82,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} diff --git a/man/Lithuania.Rd b/man/Lithuania.Rd index 789460d5..6b3b931c 100644 --- a/man/Lithuania.Rd +++ b/man/Lithuania.Rd @@ -206,6 +206,7 @@ by OSP} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} diff --git a/man/Mexico.Rd b/man/Mexico.Rd index 5c9c653f..37c51974 100644 --- a/man/Mexico.Rd +++ b/man/Mexico.Rd @@ -93,6 +93,7 @@ data} \itemize{ \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/Netherlands.Rd b/man/Netherlands.Rd index d1fe4ff0..df72ed76 100644 --- a/man/Netherlands.Rd +++ b/man/Netherlands.Rd @@ -84,6 +84,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/SouthAfrica.Rd b/man/SouthAfrica.Rd index 78c0b096..e3e6e0e5 100644 --- a/man/SouthAfrica.Rd +++ b/man/SouthAfrica.Rd @@ -78,6 +78,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/Switzerland.Rd b/man/Switzerland.Rd index 90e35976..63e89f32 100644 --- a/man/Switzerland.Rd +++ b/man/Switzerland.Rd @@ -103,6 +103,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/UK.Rd b/man/UK.Rd index c70c18c1..c27f3856 100644 --- a/man/UK.Rd +++ b/man/UK.Rd @@ -147,6 +147,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean_common}{\code{covidregionaldata::DataClass$clean_common()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} diff --git a/man/USA.Rd b/man/USA.Rd index ff36de2f..8009eb18 100644 --- a/man/USA.Rd +++ b/man/USA.Rd @@ -81,6 +81,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean_common}{\code{covidregionaldata::DataClass$clean_common()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-filter}{\code{covidregionaldata::DataClass$filter()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} diff --git a/man/WHO.Rd b/man/WHO.Rd index 6cc63911..6f34e2b3 100644 --- a/man/WHO.Rd +++ b/man/WHO.Rd @@ -68,6 +68,7 @@ data} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-available_regions}{\code{covidregionaldata::DataClass$available_regions()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-clean}{\code{covidregionaldata::DataClass$clean()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download}{\code{covidregionaldata::DataClass$download()}}\out{} +\item \out{}\href{../../covidregionaldata/html/DataClass.html#method-download_JSON}{\code{covidregionaldata::DataClass$download_JSON()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-get}{\code{covidregionaldata::DataClass$get()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-initialize}{\code{covidregionaldata::DataClass$initialize()}}\out{} \item \out{}\href{../../covidregionaldata/html/DataClass.html#method-process}{\code{covidregionaldata::DataClass$process()}}\out{} diff --git a/man/json_reader.Rd b/man/json_reader.Rd new file mode 100644 index 00000000..6081d976 --- /dev/null +++ b/man/json_reader.Rd @@ -0,0 +1,23 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/utils.R +\name{json_reader} +\alias{json_reader} +\title{Custom JSON reading function} +\usage{ +json_reader(file, verbose = FALSE, ...) +} +\arguments{ +\item{file}{A URL or filepath to a JSON} + +\item{verbose}{Logical, defaults to \code{TRUE}. Should verbose processing +messages and warnings be returned.} + +\item{...}{extra parameters to be passed to jsonlite::fromJSON} +} +\value{ +A data table +} +\description{ +Checks for use of memoise and then uses vroom::vroom. +} +\concept{utility}