diff --git a/.Rbuildignore b/.Rbuildignore index f586e5a..2e8a6ea 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -3,6 +3,7 @@ ^LICENSE\.md$ .DS_Store .gitignore +.Rprofile .git/.* ^\.RData$ ^\.csv$ diff --git a/.gitignore b/.gitignore index d0b9b11..1be28f4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ .Rproj.user .Rhistory .RData +.Rprofile .Ruserdata .Rproj .DS_Store @@ -14,4 +15,4 @@ diccionario_covid.RData covidmx.csv create_sticker.R scratch* -!datos_abiertos_covid19.zip \ No newline at end of file +!datos_abiertos_covid19.zip diff --git a/DESCRIPTION b/DESCRIPTION index 478de9d..b8a7fe8 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: covidmx -Title: Herramientas para el analisis de datos de COVID-19 en Mexico -Version: 0.7.1.0000 +Title: Descarga y analiza datos de COVID-19 en México +Version: 0.7.1.2000 Authors@R: c(person("Rodrigo", "Zepeda-Tello", , "rzepeda17@gmail.com", role = c("aut", "cre"), comment = c(ORCID = "0000-0003-4471-5270")), @@ -26,14 +26,20 @@ Authors@R: person(given = "Andrew", family = "Johnson", role = "ctb", comment = "Author of included cmdstanr fragment"), person(given = "Instituto Mexicano del Seguro Social", role = c("cph", "fnd"))) -Description: Conjunto de herramientas para analisis de datos de COVID-19 en Mexico. - Descarga y analiza los datos para COVID-19 de la Direccion General de Epidemiologia de Mexico, - la Red de Infecciones Respiratorias Agudas Graves (Red IRAG) y la Global Initiative on - Sharing All Influenza Data (GISAID). EN: Downloads and analyzes data for COVID-19 from the - Mexican General Directorate of Epidemiology, the IRAG network and GISAID. +Description: Herramientas para el análisis de datos de COVID-19 en México. Descarga y analiza + los datos para COVID-19 de la Direccion General de Epidemiología de México (DGE) + , + la Red de Infecciones Respiratorias Agudas Graves (Red IRAG) + y la Iniciativa Global + para compartir todos los datos de influenza (GISAID) + . + English: Downloads and analyzes data of COVID-19 from the Mexican General + Directorate of Epidemiology (DGE), the Network of + Severe Acute Respiratory Infections (IRAG network),and the Global + Initiative on Sharing All Influenza Data GISAID. License: MIT + file LICENSE Encoding: UTF-8 -Language: es_ES +Language: es Roxygen: list(markdown = TRUE) RoxygenNote: 7.2.1 Imports: diff --git a/NAMESPACE b/NAMESPACE index 3a09aad..650f0f9 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -2,6 +2,7 @@ export(casos) export(cfr) +export(check_sites) export(chr) export(descarga_datos_abiertos) export(descarga_datos_red_irag) diff --git a/NEWS.md b/NEWS.md index 1e81aa1..7e071d6 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,17 @@ +# covidmx 0.7.1.2000 + +* Se agregaron los cambios de CRAN: + + Quitar los cambios en `options` + + Se agregó el `value` tag en `update_covidmx` + + Se agregaron links en `DESCRIPTION`. + + Se arregló un error de encoding al leer como `tibble`. + + Se arreglaron los `dontrun` excepto para `update_covidmx` donde sí es un `dontrun`. + +# covidmx 0.7.1.1000 + +* Se cambió la descripción. +* Se envió a CRAN. + # covidmx 0.7.1.0000 * Se cambió la base de ejemplo por una más pequeña y con mejor compresión diff --git a/R/casos.R b/R/casos.R index 5255825..61a519a 100644 --- a/R/casos.R +++ b/R/casos.R @@ -146,11 +146,10 @@ #' } #' #' @examples -#' # Para el ejemplo usaremos los datos precargados pero tu puedes -#' # correr el ejemplo descargando informacion mas reciente: -#' # datos_covid <- descarga_datos_abiertos() #Sugerido #' -#' datos_covid <- datosabiertos # Datos precargados para el ejemplo +#' # Para el ejemplo usaremos los datos precargados (datosabiertos) pero tu puedes +#' # correr el ejemplo descargando informacion mas reciente: +#' datos_covid <- datosabiertos #' #' # Casos por entidad #' datos_covid <- datos_covid |> casos() @@ -166,6 +165,7 @@ #' head(datos_covid$hospitalizados) #' #' # UCI por entidad +#' \donttest{ #' datos_covid <- datos_covid |> casos(tipo_uci = "SI", list_name = "uci") #' head(datos_covid$uci) #' @@ -234,7 +234,8 @@ #' # Si no recuerdas todas las variables de la base puedes usar glimpse para ver por #' # que otras variables puedes clasificar #' datos_covid$dats |> dplyr::glimpse() -#' +#' } +#' #' # Una vez hayas concluido tu trabajo no olvides desconectar #' datos_covid$disconnect() #' diff --git a/R/cfr.R b/R/cfr.R index 95e0b7a..fe21fff 100644 --- a/R/cfr.R +++ b/R/cfr.R @@ -30,16 +30,15 @@ #' } #' #' @examples -#' # Para el ejemplo usaremos los datos precargados pero tu puedes -#' # correr el ejemplo descargando informacion mas reciente: -#' # datos_covid <- descarga_datos_abiertos() #Sugerido #' +#' # Para el ejemplo usaremos los datos precargados (datosabiertos) pero tu puedes +#' # correr el ejemplo descargando informacion mas reciente. #' datos_covid <- datosabiertos #' #' # Casos a nivel nacional por entidad #' datos_covid <- datos_covid |> cfr() #' head(datos_covid$`case fatality rate`) -#' +#' \donttest{ #' # Agregando todos los estados #' datos_covid <- datos_covid |> #' cfr(list_name = "cfr_nacional", group_by_entidad = FALSE) @@ -80,7 +79,7 @@ #' datos_covid <- datos_covid |> #' cfr(.grouping_vars = c("DIABETES"), list_name = "cfr_diab") #' head(datos_covid$cfr_diab) -#' +#' } #' # Finalmente desconectamos #' datos_covid$disconnect() #' diff --git a/R/chr.R b/R/chr.R index 522947c..f4c1eb4 100644 --- a/R/chr.R +++ b/R/chr.R @@ -35,10 +35,9 @@ #' } #' #' @examples -#' # Para el ejemplo usaremos los datos precargados pero tu puedes -#' # correr el ejemplo descargando informacion mas reciente: -#' # datos_covid <- descarga_datos_abiertos() #Sugerido #' +#' # Para el ejemplo usaremos los datos precargados (datosabiertos) pero tu puedes +#' # correr el ejemplo descargando informacion mas reciente. #' datos_covid <- datosabiertos #' #' # Casos a nivel nacional @@ -46,6 +45,7 @@ #' head(datos_covid$`case hospitalization rate`) #' #' # Nacional +#' \donttest{ #' datos_covid <- datos_covid |> chr(list_name = "chr_nacional", group_by_entidad = FALSE) #' head(datos_covid$`chr_nacional`) #' @@ -74,7 +74,7 @@ #' datos_covid <- datos_covid |> #' chr(.grouping_vars = c("DIABETES"), list_name = "chr_diab") #' head(datos_covid$chr_diab) -#' +#' } #' # Finalmente desconectamos #' datos_covid$disconnect() #' diff --git a/R/descarga_datos_abiertos.R b/R/descarga_datos_abiertos.R index 252232c..72ab4f2 100644 --- a/R/descarga_datos_abiertos.R +++ b/R/descarga_datos_abiertos.R @@ -20,7 +20,8 @@ #' Por otro lado,[descarga_db()] ejecuta las siguientes para obtener los datos abiertos: #' * [descarga_db_datos_abiertos_tbl()] Descarga las bases de datos de covid de la DGE #' * [unzip_db_datos_abiertos_tbl()] Libera el archivo `zip` descargado -#' * [parse_db_datos_abiertos_tbl()] Genera una base de datos en `duckdb` (o `tibble`) con la informacion +#' * [parse_db_datos_abiertos_tbl()] Genera una base de datos en `duckdb` (o `tibble`) c +#' on la informacion #' #' Si en algun momento se interrumpio la descarga o hubo problemas de conexion o detuviste #' el proceso de generacion de la base de datos abiertos puedes llamar a las funciones @@ -65,13 +66,13 @@ #' @param dbdir (**opcional**) Direccion donde guardar la base de datos con terminacion `.duckdb`. #' Corresponde al argumento de [duckdb::dbConnect__duckdb_driver()] #' -#' @param sites.covid (**opcional**) Sitios web con el vinculo a los archivos `.zip` de los datos abiertos. Puedes -#' cambiarlo por uno de los historicos, por ejemplo. La estructura es +#' @param sites.covid (**opcional**) Sitios web con el vinculo a los archivos `.zip` de l +#' os datos abiertos. Puedes cambiarlo por uno de los historicos, por ejemplo. La estructura es #' `c("nombre" = "url", "nombre2" = "url2")`. La ultima verificacion del sitio web default fue #' el 6 de septiembre del 2022. #' -#' @param site.covid.dic (**opcional**) Sitio desde el cual descarga del diccionario de datos. La ultima -#' verificacion del sitio fue el 6 de septiembre 2022. +#' @param site.covid.dic (**opcional**) Sitio desde el cual descarga del diccionario de datos. +#' La ultima verificacion del sitio fue el 6 de septiembre 2022. #' #' @param read_format (**opcional**) \code{"duckdb"} o \code{"tibble"} establece el formato #' de lectura de la base de datos. En la mayoria de los casos \code{"tibble"} va a @@ -100,63 +101,67 @@ #' @param cache_diccionario (**opcional**) Direccion donde guardar el diccionario en memoria #' usando `pins` para no tener que volver a descargarlo si nada ha cambiado #' -#' @param use_cache_on_failure (**opcional**) Booleana. Establece que si no se pueden descargar datos nuevos -#' utilice los que tenga en memoria. Por default es `TRUE`. +#' @param use_cache_on_failure (**opcional**) Booleana. Establece que si no se pueden descargar +#' datos nuevos utilice los que tenga en memoria. Por default es `TRUE`. #' #' @param board_url_name (**opcional**) Establece el nombre del `pins::board_url` para #' los datos abiertos (si ya usas pins para que no se empalme). #' Por default se llama `datos_abiertos` #' -#' @param board_url_name_dict (**opcional**) Establece el nombre del `pins::board_url` para los datos abiertos. Por -#' default se llama `diccionario_covid` +#' @param board_url_name_dict (**opcional**) Establece el nombre del `pins::board_url` para los +#' datos abiertos. Por default se llama `diccionario_covid` #' -#' @param clear_zip (**opcional**) Si borrar los archivos `.zip` descargados para el diccionario y los datos -#' abiertos. No se recomienda si estas usando `pins`. Ve la nota para mas informacion. +#' @param clear_zip (**opcional**) Si borrar los archivos `.zip` descargados para el diccionario +#' y los datos abiertos. No se recomienda si estas usando `pins`. Ve la nota para mas informacion. #' -#' @param clear_csv (**opcional**) Si borrar los archivos `.csv` que se generan despues de abrir el zip. El -#' default es que si pues en general solo requieres el `duckdb`. +#' @param clear_csv (**opcional**) Si borrar los archivos `.csv` que se generan despues de abrir +#' el zip. El default es que si pues en general solo requieres el `duckdb`. #' #' @param use_dict (**opcional**) Si descargar el diccionario de `site.covid.dic`. #' -#' @param unzip_command (**opcional**) Forma de extraer la base de datos de datos abiertos si `unzip` falla. +#' @param unzip_command (**opcional**) Forma de extraer la base de datos de datos abiertos +#' si `unzip` falla. #' La forma de llamarla es con `system2(unzip_command, args = c(unzip_args, file_download_data))`. #' -#' @param unzip_args (**opcional**) Argumentos de extraccion de la base de datos de datos abiertos si `unzip` falla. +#' @param unzip_args (**opcional**) Argumentos de extraccion de la base de datos de datos abiertos +#' si `unzip` falla. #' La forma de llamarla es con `system2(unzip_command, args = c(unzip_args, file_download_data))`. #' -#' @param unzip_args_dict (**opcional**) Lista de argumentos para usar `utils::unzip` en el diccionario de datos. +#' @param unzip_args_dict (**opcional**) Lista de argumentos para usar `utils::unzip` en el +#' diccionario de datos. #' -#' @param check_unzip_install (**opcional**) Bandera de verificacion para checar si tienes lo necesario para -#' unzippear los datos en el caso de que `unzip` no sirva. +#' @param check_unzip_install (**opcional**) Bandera de verificacion para checar si tienes +#' lo necesario para unzippear los datos en el caso de que `unzip` no sirva. #' -#' @param descarga_db_datos_abiertos_tbl_args (**opcional**) Lista con argumentos adicionales para el -#' `pins::pin_download` de datos abiertos +#' @param descarga_db_datos_abiertos_tbl_args (**opcional**) Lista con argumentos adicionales +#' para el `pins::pin_download` de datos abiertos #' -#' @param download_file_args (**opcional**) Lista de argumentos adicionales para `download.file` de los datos -#' si se elige este metodo para descargar. +#' @param download_file_args (**opcional**) Lista de argumentos adicionales para `download.file` +#' de los datos si se elige este metodo para descargar. #' #' @param descarga_db_diccionario_ssa_args (**opcional**) Lista con argumentos adicionales para el #' `pins::pin_download` de datos abiertos #' -#' @param download_file_args_dict (**opcional**) Lista de argumentos adicionales para `download.file` del diccionario -#' si se elige este metodo de descarga. +#' @param download_file_args_dict (**opcional**) Lista de argumentos adicionales +#' para `download.file` del diccionario si se elige este metodo de descarga. #' -#' @param force_download (**opcional**) Analiza si cambio el pin y descarga datos nuevos en caso afirmativo aunque -#' haya pasado menos de un dia. +#' @param force_download (**opcional**) Analiza si cambio el pin y descarga datos nuevos en caso +#' afirmativo aunque haya pasado menos de un dia. #' #' @param show_warnings (**opcional**) si arrojar `warnings` #' -#' @param datos_abiertos_zip_paths (**opcional**) Camino a los datos abiertos si ya los descargaste en `zip` +#' @param datos_abiertos_zip_paths (**opcional**) Camino a los datos abiertos si ya los +#' descargaste en `zip` #' -#' @param datos_abiertos_unzipped_path (**opcional**) Camino a los datos abiertos `csv` si ya los descargaste y -#' descomprimiste el archivo `zip` en un `csv` +#' @param datos_abiertos_unzipped_path (**opcional**) Camino a los datos abiertos `csv` si ya +#' los descargaste y descomprimiste el archivo `zip` en un `csv` #' #' @param datos_abiertos_tbl (**opcional**) Camino a un archivo `.duckdb` con los datos formateados #' #' @param diccionario_zip_path (**opcional**) Camino al diccionario si ya losdescargaste en `zip` #' -#' @param diccionario_unzipped_path (**opcional**) Camino al diccionario `csv` si ya lo descargaste y -#' descomprimiste el archivo `zip` en un `csv` +#' @param diccionario_unzipped_path (**opcional**) Camino al diccionario `csv` si ya +#' lo descargaste y descomprimiste el archivo `zip` en un `csv` #' #' @param diccionario (**opcional**) Lo que resulta de realizar una descarga del diccionario #' usando `descarga_diccionario` @@ -169,17 +174,23 @@ #' #' @return Lista de valores: #' \itemize{ -#' \item dats - Tabla conectada mediante `duckdb::dbConnect__duckdb_driver()` (si `duckdb`) o -#' tibble (si `tibble`) +#' \item dats - Tabla conectada mediante `duckdb::dbConnect__duckdb_driver()` +#' (si `duckdb`) o tibble (si `tibble`) #' \item disconnect - Funcion para cerrar la conexion a la base de datos. #' \item dict - Lista de `tibble`s con el diccionario de datos para cada variable #' } #' @examples -#' \dontrun{ +#' \donttest{ #' # Descarga de la base de datos junto con diccionario en duckdb y la guarda en -#' # un archivo llamado covidmx.duckdb -#' file_duck <- "covidmx.duckdb" # descomenta esta linea -#' datos_covid <- descarga_datos_abiertos(dbdir = file_duck, show_warnings = FALSE) +#' # un archivo temporal. +#' # Puede cambiarse el dlink por el adecuado o dejarse en blanco. +#' # quita la opción de sites.covid para descargar los de la DGE. Esto es sólo un ejemplo. +#' file_duck <- tempfile(fileext = ".duckdb") +#' dlink <- "https://github.com/RodrigoZepeda/covidmx/raw/main/datos_abiertos_covid19.zip" +#' datos_covid <- descarga_datos_abiertos( +#' dbdir = file_duck, +#' sites.covid = dlink, show_warnings = FALSE +#' ) #' #' # Luego haces algo con esos datos... #' @@ -192,17 +203,7 @@ #' #' # Si no pones `dbdir` nota que los datos se guardan en un archivo temporal que se elimina #' # al cerrar tu sesion -#' datos_covid <- descarga_datos_abiertos() -#' -#' # Desconectamos -#' datos_covid$disconnect() -#' -#' # Tambien puedes descargar de otra direccion con sites.covid -#' url <- c( -#' "link_de_ejemplo" = -#' "https://github.com/RodrigoZepeda/covidmx/raw/main/datos_abiertos_covid19.zip" -#' ) -#' datos_covid <- descarga_datos_abiertos(sites.covid = url) +#' datos_covid <- descarga_datos_abiertos(sites.covid = dlink, show_warnings = FALSE) #' #' # Desconectamos #' datos_covid$disconnect() diff --git a/R/descarga_datos_abiertos_aux.R b/R/descarga_datos_abiertos_aux.R index 5a066a0..47ddaec 100644 --- a/R/descarga_datos_abiertos_aux.R +++ b/R/descarga_datos_abiertos_aux.R @@ -34,21 +34,26 @@ #' \item dict - Lista de `tibble`s con el diccionario de datos para cada variable #' } #' @examples -#' \dontrun{ +#' \donttest{ #' # Descarga solo el diccionario -#' # diccionario <- descarga_diccionario() +#' diccionario <- descarga_diccionario(show_warnings = FALSE) #' -#' # O bien descarga solo los datos abiertos -#' datos_abiertos <- descarga_db() +#' # O bien descarga solo los datos abiertos de ejemplo desde Github +#' # omite el dlink (o cámbialo por el vínculo correcto) para descargar los datos de la DGE +#' dlink <- "https://github.com/RodrigoZepeda/covidmx/raw/main/datos_abiertos_covid19.zip" +#' datos_abiertos <- descarga_db(sites.covid = dlink, show_warnings = FALSE) #' #' # Pegalos en el formato que se necesita para el resto de funciones -#' datos_covid <- pega_db_datos_abiertos(datos_abiertos, diccionario) +#' datos_covid <- pega_db_datos_abiertos_tbl_y_diccionario(datos_abiertos, diccionario) #' #' # Desconectamos #' datos_covid$disconnect() #' #' # Tambien puedes descargar paso por paso -#' datos_abiertos <- descarga_db_datos_abiertos_tbl() |> # Descarga +#' datos_abiertos <- descarga_db_datos_abiertos_tbl( +#' sites.covid = dlink, +#' show_warnings = FALSE +#' ) |> # Descarga #' unzip_db_datos_abiertos_tbl() |> # Unzippea #' parse_db_datos_abiertos_tbl() # Duckdb #' @@ -66,7 +71,8 @@ #' [descarga_datos_variantes_GISAID()] #' @export #' @param cache (**opcional**) parametro para el cache de `pins::board_url` -#' @param ... (**opcional**) Parametros adicionales para `duckdb::dbConnect()` con conexion de `duckdb::duckdb()` +#' @param ... (**opcional**) Parametros adicionales para `duckdb::dbConnect()` con +#' conexion de `duckdb::duckdb()` descarga_db <- function(read_format = c("duckdb", "tibble"), tblname = "covidmx", @@ -673,25 +679,17 @@ parse_db_datos_abiertos_tbl <- function(datos_abiertos_unzipped_path, cli::cli_abort("Por favor instala {.code dbplyr} con {.code install.packages('dbplyr')}") } - if (read_format == "tibble") { - - # Desactivamos que nos hable - readr_progress_old <- getOption("readr.show_progress") - options(readr.show_progress = !quiet) - - # Desactivamos las parsing warnings - old_warning <- getOption("warn") - options(warn = -1) - if (!quiet) { cli::cli_alert_info("{.strong Cargando} los datos en {.file tibble}...") } # Leemos el archivo - dats <- readr::read_csv(datos_abiertos_unzipped_path, + dats <- readr::read_csv(unlist(datos_abiertos_unzipped_path), locale = readr::locale(encoding = "UTF-8"), trim_ws = TRUE, + show_col_types = !quiet, + progress = !quiet, col_types = readr::cols( .default = readr::col_character(), FECHA_ACTUALIZACION = readr::col_date(format = "%Y-%m-%d"), @@ -730,11 +728,6 @@ parse_db_datos_abiertos_tbl <- function(datos_abiertos_unzipped_path, ) ) - - # Set readr progress - options(readr.show_progress = readr_progress_old) - options(warn = old_warning) - if (!quiet) { cli::cli_alert_info( "{.strong Conectando} a la tabla {.code {tblname}} creada en {.file tibble}..." diff --git a/R/descarga_datos_red_irag.R b/R/descarga_datos_red_irag.R index fa7b0b6..784ceb3 100644 --- a/R/descarga_datos_red_irag.R +++ b/R/descarga_datos_red_irag.R @@ -39,24 +39,24 @@ #' } #' #' @examples -#' \dontrun{ +#' \donttest{ #' # Descarga de datos estatales -#' ocupacion_hospitalaria <- descarga_datos_red_irag("Estatal") +#' url_global <- paste0( +#' "https://media.githubusercontent.com/media/RodrigoZepeda/", +#' "CapacidadHospitalariaMX/master/processed/" +#' ) +#' +#' if (RCurl::url.exists(paste0(url_global, "HospitalizacionesMX_estatal.csv"))) { +#' ocupacion_hospitalaria <- descarga_datos_red_irag("Estatal", show_warnings = FALSE) +#' } #' +#' # También puedes hacer la descarga por unidad medica #' # Descarga de datos por unidad medica -#' ocupacion_hospitalaria <- descarga_datos_red_irag("Unidad Medica") -#' -#' # Si ya descargaste hace menos de un día el programa solito se da cuenta y lee de memoria -#' # sin verificar que el contenido en Internet haya cambiado -#' ocupacion_unidad <- descarga_datos_red_irag("Unidad Medica") -#' -#' # Puedes forzarlo a checar el contenido en Internet usando -#' ocupacion_unidad <- descarga_datos_red_irag("Unidad Medica", force_download = TRUE) -#' -#' # Así se ven los datos -#' ocupacion_hospitalaria |> -#' plot_covid(df_variable = "Hospitalizados (%)", df_covariates = "Estado", type = "area") +#' if (RCurl::url.exists(paste0(url_global, "HospitalizacionesMX_unidad_medica.csv"))) { +#' ocupacion_unidad <- descarga_datos_red_irag("Unidad Medica", show_warnings = FALSE) +#' } #' } +#' #' @encoding UTF-8 #' @seealso [descarga_datos_variantes_GISAID()] [descarga_datos_abiertos()] [read_datos_abiertos()] #' diff --git a/R/descarga_datos_variantes_GISAID.R b/R/descarga_datos_variantes_GISAID.R index ce4b77d..b69a1b7 100644 --- a/R/descarga_datos_variantes_GISAID.R +++ b/R/descarga_datos_variantes_GISAID.R @@ -33,32 +33,18 @@ #' } #' #' @examples -#' \dontrun{ +#' #' # Descarga de variantes a nivel nacional -#' variantes_covid <- descarga_datos_variantes_GISAID("nacional") +#' url_global <- "https://raw.githubusercontent.com/RodrigoZepeda/VariantesCovid/main/tablas/" +#' if (RCurl::url.exists(paste0(url_global, "Proporcion_variantes_nacional.csv"))) { +#' variantes_covid <- descarga_datos_variantes_GISAID("nacional") +#' } #' #' # Descarga de variantes para CDMX -#' variantes_covid <- descarga_datos_variantes_GISAID("cdmx") -#' -#' # Si ya descargaste hace menos de un día el programa solito se da cuenta y lee de memoria -#' # sin verificar que el contenido en Internet haya cambiado -#' variantes_covid <- descarga_datos_variantes_GISAID("nacional") -#' -#' # Puedes forzarlo a checar el contenido en Internet usando -#' variantes_covid <- descarga_datos_variantes_GISAID("nacional", force_download = TRUE) -#' -#' # Para visualizar -#' if (requireNamespace("ggstream") & requireNamespace("lubridate")) { -#' library(ggplot2) -#' library(lubridate) -#' ggplot(variantes_covid) + -#' ggstream::geom_stream(aes( -#' x = ymd("2019/12/27") + years(ano - 2020) + weeks(semana), -#' y = n, fill = variant, -#' )) + -#' theme_minimal() -#' } +#' if (RCurl::url.exists(paste0(url_global, "Proporcion_variantes_cdmx.csv"))) { +#' variantes_covid <- descarga_datos_variantes_GISAID("cdmx") #' } +#' #' @encoding UTF-8 #' @references #' diff --git a/R/numero_pruebas.R b/R/numero_pruebas.R index 03620b0..215380d 100644 --- a/R/numero_pruebas.R +++ b/R/numero_pruebas.R @@ -38,10 +38,9 @@ #' } #' #' @examples -#' # Para el ejemplo usaremos los datos precargados pero tu puedes -#' # correr el ejemplo descargando informacion mas reciente: -#' # datos_covid <- descarga_datos_abiertos() #Sugerido #' +#' # Para el ejemplo usaremos los datos precargados (datosabiertos) pero tu puedes +#' # correr el ejemplo descargando informacion mas reciente. #' datos_covid <- datosabiertos #' #' # Número de pruebas PCR/Antigeno a nivel nacional por estado diff --git a/R/pin_get_download_time.R b/R/pin_get_download_time.R index 1a9e34d..39e9a35 100644 --- a/R/pin_get_download_time.R +++ b/R/pin_get_download_time.R @@ -118,3 +118,47 @@ get_site_dic <- function() { "covid19.zip" ) } + +#' @title Funcion para verificar la existencia de los sitios web de datos de covid +#' +#' @description La funcion recorre cada uno de los sitios y verifica su existencia. +#' +#' @param covid_data (**opcional**) Variable booleana `TRUE` si verifica los sitios de +#' datos y `FALSE` si no los verifica +#' +#' @param dictionnary (**opcional**) Variable booleana `TRUE` si verifica los sitios del +#' diccionario y `FALSE` si no lo verifica +#' +#' +#' @return Devuelve `TRUE` si todos los sitios web existen, `FALSE`en caso de que no. +#' +#' @examples +#' # Verificamos que existan los sitios cambiando a TRUE cualquiera: +#' check_sites(covid_data = FALSE, dictionnary = FALSE) +#' +#' @export +check_sites <- function(covid_data = TRUE, dictionnary = TRUE) { + sites <- c() + + if (covid_data) { + sites <- c(sites, get_sites_covid()) + } + + if (dictionnary) { + dictionnary <- c(sites, get_site_dic()) + } + + site_available <- c(TRUE) + if (length(sites) > 0) { + for (site in sites) { + cli::cli_alert("Checando {.url {site}}") + site_available <- c(site_available, RCurl::url.exists(site)) + } + } + + if (all(site_available)) { + cli::cli_alert_success("Los sitios de descarga fueron encontrados") + } + + return(all(site_available)) +} diff --git a/R/plot_covid.R b/R/plot_covid.R index 1e4e92a..9093703 100644 --- a/R/plot_covid.R +++ b/R/plot_covid.R @@ -1,4 +1,4 @@ -#' Grafica los casos de COVID-19 +#' Grafica los casos de COVID-19 #' #' @description #' `plot_covid` Intenta graficar automaticamente la base de datos de covid generados por [casos()] @@ -32,25 +32,23 @@ #' @return Un `ggplot2` con la imagen graficada. #' #' @examples -#' # Para el ejemplo usaremos los datos precargados pero tu puedes -#' # correr el ejemplo descargando informacion mas reciente: -#' # datos_covid <- descarga_datos_abiertos() #Sugerido #' -#' # Grafica de casos por entidad +#' # Para el ejemplo usaremos los datos precargados (datosabiertos) pero tu puedes +#' # correr el ejemplo descargando informacion mas reciente: #' datos_covid <- datosabiertos #' #' # Aqui muchos aparecen en cero si usas el default de datosabiertos #' # porque la base de datosabiertos tiene muy pocos casos #' datos_covid |> -#' casos(list_name = "casos_for_plot") |> +#' casos(list_name = "casos_for_plot", group_by_entidad = FALSE) |> #' plot_covid(df_name = "casos_for_plot") #' #' # Grafica de casos nacional +#' \donttest{ #' datos_covid |> #' casos(group_by_entidad = FALSE, list_name = "plot_nal") |> #' plot_covid(df_name = "plot_nal") #' -#' \dontrun{ #' # Ajuste mediante splines #' datos_covid |> #' casos(group_by_entidad = FALSE, list_name = "spline_nacional") |> @@ -58,19 +56,21 @@ #' #' # Graficacion por covariables #' # el objeto devuelto es un objeto de ggplot2 al que se le puede dar formato -#' datos_covid |> -#' chr( -#' group_by_entidad = TRUE, list_name = "plot_nal", .grouping_vars = c("SEXO"), -#' entidades = c("BAJA CALIFORNIA", "BAJA CALIFORNIA SUR") -#' ) |> -#' plot_covid( -#' df_name = "plot_nal", -#' date_break_format = "1 week", -#' date_labels_format = "%d/%B/%Y", -#' df_covariates = c("SEXO", "ENTIDAD_FEDERATIVA"), -#' type = "area" -#' ) + -#' ggtitle("Plot nacional") +#' if (!requireNamespace("ggplot2", quietly = TRUE)) { +#' datos_covid |> +#' chr( +#' group_by_entidad = TRUE, list_name = "plot_nal", .grouping_vars = c("SEXO"), +#' entidades = c("BAJA CALIFORNIA", "BAJA CALIFORNIA SUR") +#' ) |> +#' plot_covid( +#' df_name = "plot_nal", +#' date_break_format = "1 week", +#' date_labels_format = "%d/%B/%Y", +#' df_covariates = c("SEXO", "ENTIDAD_FEDERATIVA"), +#' type = "area" +#' ) + +#' ggplot2::ggtitle("Plot nacional") +#' } #' #' # Puedes tambien primero editar el tibble que usaras por ejemplo poniendo #' # los nombres de los sexos @@ -79,17 +79,6 @@ #' group_by_entidad = TRUE, list_name = "plot_nal", .grouping_vars = c("SEXO"), #' entidades = c("BAJA CALIFORNIA", "BAJA CALIFORNIA SUR") #' ) -#' -#' datos_covid$plot_nal |> -#' left_join(datos_covid$dict$SEXO, by = c("SEXO" = "CLAVE")) |> -#' plot_covid( -#' date_break_format = "1 week", -#' date_labels_format = "%d/%B/%Y", -#' df_variable = "CASE HOSPITALIZATION RATE", -#' df_covariates = c("DESCRIPCI\032N", "ENTIDAD_FEDERATIVA"), -#' type = "area" -#' ) + -#' ggtitle("Plot nacional") #' } #' #' # Finalmente desconectamos diff --git a/R/positividad.R b/R/positividad.R index 1c46566..7ecee5d 100644 --- a/R/positividad.R +++ b/R/positividad.R @@ -42,16 +42,16 @@ #' } #' #' @examples -#' # Para el ejemplo usaremos los datos precargados pero tu puedes -#' # correr el ejemplo descargando informacion mas reciente: -#' # datos_covid <- descarga_datos_abiertos() #Sugerido #' +#' # Para el ejemplo usaremos los datos precargados (datosabiertos) pero tu puedes +#' # correr el ejemplo descargando informacion mas reciente. #' datos_covid <- datosabiertos #' #' # Casos a nivel nacional por estado por tipo de prueba #' datos_covid <- datos_covid |> positividad() #' head(datos_covid$positividad) #' +#' \donttest{ #' # Total nacional sumando todas las pruebas del pais #' datos_covid <- datos_covid |> #' positividad(group_by_entidad = FALSE, list_name = "positividad_nacional") @@ -93,7 +93,8 @@ #' list_name = "positividad_imss_sexo" #' ) #' head(datos_covid$positividad_imss_sexo) -#' +#' } +#' #' # Una vez hayas concluido tu trabajo no olvides desconectar #' datos_covid$disconnect() #' @references diff --git a/R/read_datos_abiertos.R b/R/read_datos_abiertos.R index d9dbe07..a527975 100644 --- a/R/read_datos_abiertos.R +++ b/R/read_datos_abiertos.R @@ -22,40 +22,52 @@ #' @seealso [descarga_datos_abiertos()] [descarga_datos_red_irag()] #' [descarga_datos_variantes_GISAID()] [casos()] #' @examples -#' \dontrun{ -#' # EJEMPLO 1: Lee los datos de duckdb una vez descargados -#' datos_covid <- descarga_datos_abiertos(dbdir = "ejemplo.duckdb") # Descarga y genera duckdb -#' datos_covid$disconnect() +#' \donttest{ +#' # EJEMPLO 0: Descarga los datos abiertos en archivo file_duck +#' file_duck <- tempfile(fileext = ".duckdb") +#' dlink <- "https://github.com/RodrigoZepeda/covidmx/raw/main/datos_abiertos_covid19.zip" +#' descarga_datos_abiertos(dbdir = file_duck, sites.covid = dlink, show_warnings = FALSE)$disconnect() #' -#' datos_covid <- read_datos_abiertos("ejemplo.duckdb") # Lee duckdb +#' # EJEMPLO 1: Lee los datos de duckdb una vez descargados +#' datos_covid <- read_datos_abiertos(file_duck, show_warnings = FALSE) # Lee duckdb #' datos_covid$disconnect() #' #' # EJEMPLO 2: Lee los datos desde un zip descargado -#' direccion_zip <- descarga_db_datos_abiertos_tbl() # Descarga archivos de la DGE y guarda el zip -#' datos_covid <- read_datos_abiertos(direccion_zip, dbdir = "ejemplo.duckdb") # Lee zip +#' # Descarga archivos de la DGE y guarda el zip +#' direccion_zip <- descarga_db_datos_abiertos_tbl(sites.covid = dlink, show_warnings = FALSE) +#' # Lee zip +#' datos_covid <- read_datos_abiertos(direccion_zip, dbdir = file_duck, show_warnings = FALSE) #' datos_covid$disconnect() #' #' # EJEMPLO 3: Lee los datos desde un zip descargado -#' direccion_zip <- descarga_db_datos_abiertos_tbl() # Descarga archivos zip de la DGE +#' # Descarga archivos zip de la DGE +#' direccion_zip <- descarga_db_datos_abiertos_tbl(sites.covid = dlink, show_warnings = FALSE) #' direccion_csv <- unzip_db_datos_abiertos_tbl(direccion_zip) # Descomprime el zip para tener csv -#' datos_covid <- read_datos_abiertos(direccion_csv, dbdir = "ejemplo.duckdb") # Lee los csv +#' # Lee los csv +#' datos_covid <- read_datos_abiertos(direccion_csv, dbdir = file_duck, show_warnings = FALSE) #' datos_covid$disconnect() #' #' # EJEMPLO 4: Si ya tenias el diccionario lo puedes agregar -#' diccionario <- descarga_diccionario() # Simula la idea de ya tener el diccionario -#' datos_covid <- read_datos_abiertos("ejemplo.duckdb", diccionario = diccionario) +#' # Simula la idea de ya tener el diccionario +#' diccionario <- descarga_diccionario(show_warnings = FALSE) +#' datos_covid <- read_datos_abiertos(file_duck, diccionario = diccionario, show_warnings = FALSE) #' datos_covid$disconnect() #' #' # EJEMPLO 5: Si ya tenias el diccionario como archivo zip -#' diccionario_zip <- descarga_db_diccionario_ssa() # Descarga el diccionario para tenerlo como zip -#' datos_covid <- read_datos_abiertos("ejemplo.duckdb", diccionario_zip_path = diccionario_zip) +#' # Descarga el diccionario para tenerlo como zip +#' diccionario_zip <- descarga_db_diccionario_ssa(show_warnings = FALSE) +#' datos_covid <- read_datos_abiertos(file_duck, diccionario_zip_path = diccionario_zip, +#' show_warnings = FALSE) #' datos_covid$disconnect() #' #' # EJEMPLO 6: Si ya tenias el diccionario como archivo xlsx -#' diccionario_zip <- descarga_db_diccionario_ssa() # Descarga el diccionario para tenerlo como zip -#' diccionario_csv <- unzip_db_diccionario_ssa(diccionario_zip) # Abre el csv del diccionario -#' datos_covid <- read_datos_abiertos("ejemplo.duckdb", -#' diccionario_unzipped_path = diccionario_csv +#' # Descarga el diccionario para tenerlo como zip +#' diccionario_zip <- descarga_db_diccionario_ssa(show_warnings = FALSE) +#' # Abre el csv del diccionario +#' diccionario_csv <- unzip_db_diccionario_ssa(diccionario_zip) +#' datos_covid <- read_datos_abiertos(file_duck, +#' diccionario_unzipped_path = diccionario_csv, +#' show_warnings = FALSE #' ) #' datos_covid$disconnect() #' } diff --git a/R/read_datos_abiertos_aux.R b/R/read_datos_abiertos_aux.R index 44f9042..bb0313d 100644 --- a/R/read_datos_abiertos_aux.R +++ b/R/read_datos_abiertos_aux.R @@ -4,7 +4,8 @@ #' La funcion principal es [read_datos_abiertos()] la cual decide si los lee de `zip`, #' `duckdb` o `csv` Tambien puedes usar las auxiliares respectivas #' * [read_datos_abiertos_zip()] Si sólo descargaste los datos de la DGE en `.zip` -#' * [read_datos_abiertos_csv()] Si descargaste los datos de la DGE en `.zip` y los descomprimiste. +#' * [read_datos_abiertos_csv()] Si descargaste los datos de la DGE en `.zip` y +#' los descomprimiste. #' * [read_datos_abiertos_duckdb()] Si ya creaste tu table en `duckdb` #' #' @note Para guardar tu base con `duckdb` cambia el `dbdir` a un archivo `.duckdb`. Como ejemplo @@ -19,10 +20,15 @@ #' } #' #' @examples -#' \dontrun{ +#' \donttest{ #' # Lee los datos de duckdb una vez descargados -#' file_ejemplo <- "datos.duckdb" -#' datos_covid <- descarga_datos_abiertos(dbdir = file_ejemplo) +#' # quita la opción de sites.covid para descargar los de la DGE. Esto es sólo un ejemplo. +#' file_ejemplo <- tempfile(fileext = ".duckdb") +#' dlink <- "https://github.com/RodrigoZepeda/covidmx/raw/main/datos_abiertos_covid19.zip" +#' datos_covid <- descarga_datos_abiertos( +#' dbdir = file_ejemplo, +#' sites.covid = dlink, show_warnings = FALSE +#' ) #' datos_covid$disconnect() #' #' datos_covid <- read_datos_abiertos(file_ejemplo, show_warnings = FALSE) @@ -34,27 +40,28 @@ #' #' # Descarga los datos y lee de un zip guardandolos a la vez en #' # base de nombre datos_desde_zip.duckdb -#' direccion_zip <- descarga_db_datos_abiertos_tbl() +#' direccion_zip <- descarga_db_datos_abiertos_tbl(sites.covid = dlink, show_warnings = FALSE) #' datos_covid <- read_datos_abiertos(direccion_zip, -#' dbdir = "datos_desde_zip.duckdb", +#' dbdir = file_ejemplo, #' show_warnings = FALSE #' ) #' datos_covid$disconnect() #' #' # Es lo mismo que: #' datos_covid <- read_datos_abiertos_zip(direccion_zip, -#' dbdir = "datos_desde_zip.duckdb", +#' dbdir = file_ejemplo, #' show_warnings = FALSE #' ) #' datos_covid$disconnect() #' #' # Descarga los datos y lee de un csv -#' direccion_zip <- descarga_db_datos_abiertos_tbl(show_warnings = FALSE) -#' direccion_csv <- unzip_db_datos_abiertos_tbl(direccion_zip, show_warnings = FALSE) +#' direccion_zip <- descarga_db_datos_abiertos_tbl(sites.covid = dlink, show_warnings = FALSE) +#' direccion_csv <- unzip_db_datos_abiertos_tbl(direccion_zip) #' datos_covid <- read_datos_abiertos(direccion_csv, show_warnings = FALSE) #' datos_covid$disconnect() #' #' # Es lo mismo que: +#' direccion_csv <- unzip_db_datos_abiertos_tbl(direccion_zip) #' datos_covid <- read_datos_abiertos_csv(direccion_csv, show_warnings = FALSE) #' datos_covid$disconnect() #' } diff --git a/R/rt.R b/R/rt.R index 40b8566..0774cae 100644 --- a/R/rt.R +++ b/R/rt.R @@ -27,7 +27,7 @@ #' #' @importFrom rlang := #' -#' @return Appends a la lista de `datos_covid` una nueva entrada de nombre `list_name` +#' @return Une a la lista de `datos_covid` una nueva entrada de nombre `list_name` #' (default: `estima_rt`) con una base de datos (`tibble`) con los #' resultados agregados. #' \itemize{ @@ -40,13 +40,13 @@ #' } #' #' @examples -#' # Para el ejemplo usaremos los datos precargados pero tu puedes -#' # correr el ejemplo descargando informacion mas reciente: -#' # datos_covid <- descarga_datos_abiertos() #Sugerido #' +#' # Para el ejemplo usaremos los datos precargados (datosabiertos) pero tu puedes +#' # correr el ejemplo descargando informacion mas reciente. #' datos_covid <- datosabiertos #' #' # Casos a nivel nacional por estado en todos +#' \donttest{ #' suppressWarnings( #' datos_covid <- datos_covid |> estima_rt() #' ) @@ -73,7 +73,6 @@ #' #' #' # Cambios en los parametros de epiestim #' # estos parametros no tienen razon de ser mas alla de mostrar como se cambian -#' \dontrun{ #' datos_covid <- datos_covid |> #' estima_rt( #' group_by_entidad = FALSE, @@ -90,9 +89,8 @@ #' max_std_si = 1.0 #' ) #' ) -#' #' head(datos_covid$config_rt) -#' +#' #' # Casos en BC, BCS en los confirmados #' datos_covid |> #' estima_rt( diff --git a/R/update_covidmx.R b/R/update_covidmx.R index 26b241e..a5ddf1c 100644 --- a/R/update_covidmx.R +++ b/R/update_covidmx.R @@ -7,9 +7,10 @@ #' @param force (**opcional**) Determina si forzar la reinstalacion #' @param ... (**opcional**) Parametros adicionales para [remotes::install_github()] #' +#' @return Ningún valor. Se llama para actualizar el paquete a la versión más reciente desde Github. #' @examples #' \dontrun{ -#' # Actualiza el paquete de coivdmx +#' # Actualiza el paquete de coivdmx de Github | Updates the covidmx package from Github #' update_covidmx() #' } #' @@ -29,8 +30,13 @@ update_covidmx <- function(quiet = FALSE, force = FALSE, ...) { ) } - # Instalaciom + # Instalacion remotes::install_github("RodrigoZepeda/covidmx", quiet = quiet, force = force, ...) + + # Mensaje de reinicio + cli::cli_alert_success( + "Actualizaste exitosamente {.code covidmx}. Por favor reinicia la sesion actual de {.code R}" + ) } else { # Sugerimos instalar diff --git a/covidmx.Rproj b/covidmx.Rproj index aced230..b446de8 100644 --- a/covidmx.Rproj +++ b/covidmx.Rproj @@ -9,11 +9,17 @@ UseSpacesForTab: Yes NumSpacesForTab: 2 Encoding: UTF-8 -RnwWeave: Sweave +RnwWeave: knitr LaTeX: pdfLaTeX +AutoAppendNewline: Yes + BuildType: Package PackageUseDevtools: Yes PackageInstallArgs: --no-multiarch --with-keep.source PackageCheckArgs: --as-cran --timings PackageRoxygenize: rd,collate,namespace + +UseNativePipeOperator: Yes + +SpellingDictionary: es_ES diff --git a/cran-comments.md b/cran-comments.md new file mode 100644 index 0000000..59bebeb --- /dev/null +++ b/cran-comments.md @@ -0,0 +1,74 @@ +# R CMD check results + + +## v0.7.1.1000 + +``` +0 errors | 0 warnings | 1 note +``` + ++ This is a new release. + +Additional comments by reviewer: + ++ **Solved** Please provide a link to the used webservices (e.g.: DGE, IRAG +network,...) to the description field +of your DESCRIPTION file in the form + or +with angle brackets for auto-linking and no space after 'http:' and +'https:'. + ++ **Solved** Please add \value to .Rd files regarding exported methods and explain +the functions results in the documentation. Please write about the +structure of the output (class) and also what the output means. +(If a function does not return a value, please document that too, e.g. +`\value{No return value, called for side effects} or similar)` +Missing Rd-tags: + `update_covidmx.Rd: \value` + ++ **Solved** Some code lines in examples are commented out. +Please never do that. Ideally find toy examples that can be regularly +executed and checked. Lengthy examples (> 5 sec), can be wrapped in +`\donttest{}`. +Examples in comments in: + `descarga_db.Rd` +`\dontrun{}` should only be used if the example really cannot be executed +(e.g. because of missing additional software, missing API keys, ...) by +the user. That's why wrapping examples in `\dontrun{}` adds the comment +("# Not run:") as a warning for the user. +Does not seem necessary. **RESPONSE: The only one is `update_covidmx` which updates the package from Github.** +Please replace `\dontrun` with `\donttest`. +Please unwrap the examples if they are executable in < 5 sec, or replace +`\dontrun{}` with `\donttest{}`. + ++ **Solved** You are setting `options(warn=-1)` in your function. This is not allowed. Please rather use `suppressWarnings()` if really needed. + ++ **Solved** Please make sure that you do not change the user's options, par or +working directory. If you really have to do so within functions, please +ensure with an *immediate* call of `on.exit()` that the settings are reset +when the function is exited. e.g.: +``` +old <- options() # code line i +on.exit(options(old)) # code line i + 1 +``` +``` +options(readr.show_progress = !quiet) # somewhere after +``` +e.g.: `-> R/descarga_datos_abiertos_aux.R` +If you're not familiar with the function, please check ?on.exit. This +function makes it possible to restore options before exiting a function +even if the function breaks. Therefore it needs to be called immediately +after the option change within a function. + +**OUR RESPONSE**: + +``` +We've made all the changes suggested by reviewer Beni Altmann: + +1) We've eliminated the changes in the user's `options`. +2) We've added return `\value` to all `.Rd` files. +3) Added links <> to webservices used in description. +4) We've changed all long (>5 sec) `\dontrun` examples to `donttest` except for one in `update_covidmx`. This function installs an updated version of the package (if available) from Github . The rationale for this is that the webservices used don't depend on us and weblinks and dataset structures have changed through time. Sometimes changes have occurred twice in the same week! So in order for us to rapidly provide the users with an updated version of the package whenever something from these services changes we set up the `update_covidmx` function (also to keep with CRAN's policies and respect your time by not uploading a package too continuously). + +Thank you for your time and review :) +``` diff --git a/data-raw/DATASET.R b/data-raw/DATASET.R index 1b6fcfe..2f48845 100644 --- a/data-raw/DATASET.R +++ b/data-raw/DATASET.R @@ -3,50 +3,54 @@ library(tidyverse) library(lubridate) library(stringi) -#Leemos los datos -covid <- descarga_datos_abiertos("patricio.duckdb") -covid <- read_datos_abiertos("patricio.duckdb") +# Leemos los datos +covid <- descarga_datos_abiertos("patricio.duckdb") +covid <- read_datos_abiertos("patricio.duckdb") -#Obtenemos la info -covid$dats <- covid$dats %>% collect() +# Obtenemos la info +covid$dats <- covid$dats %>% collect() -#Filtramos BC y BCS para el ejemplo +# Filtramos BC y BCS para el ejemplo covid$dats <- covid$dats %>% filter(ENTIDAD_UM %in% c("02", "03")) -#Limpiamos fecha de sintomas -covid$dats <- covid$dats %>% +# Limpiamos fecha de sintomas +covid$dats <- covid$dats %>% filter(year(FECHA_SINTOMAS) > 2020) %>% filter(FECHA_SINTOMAS >= ymd("2021/07/01") & FECHA_SINTOMAS <= ymd("2021/08/01")) covid$dats <- covid$dats %>% - select(-FECHA_ACTUALIZACION, -ID_REGISTRO, -ORIGEN, -INDIGENA,-NEUMONIA,-c(EPOC:OTRO_CASO), - -MIGRANTE, -PAIS_NACIONALIDAD, -PAIS_ORIGEN, -MUNICIPIO_RES, -INTUBADO, -NACIONALIDAD, - -EMBARAZO) + select( + -FECHA_ACTUALIZACION, -ID_REGISTRO, -ORIGEN, -INDIGENA, -NEUMONIA, -c(EPOC:OTRO_CASO), + -MIGRANTE, -PAIS_NACIONALIDAD, -PAIS_ORIGEN, -MUNICIPIO_RES, -INTUBADO, -NACIONALIDAD, + -EMBARAZO + ) covid$dats <- covid$dats |> sample_n(20000) covid$disconnect() -datosabiertos <- covid +datosabiertos <- covid datosabiertos$disconnect <- function(quiet = FALSE) { - if (!quiet){cli::cli_alert_success("Desconectado")} + if (!quiet) { + cli::cli_alert_success("Desconectado") + } } -for (listname in names(datosabiertos$dict)){ +for (listname in names(datosabiertos$dict)) { message(listname) - datosabiertos$dict[[listname]] <- + datosabiertos$dict[[listname]] <- datosabiertos$dict[[listname]] |> mutate_if(is.character, ~ stri_enc_toascii(.)) - colnames(datosabiertos$dict[[listname]]) <- + colnames(datosabiertos$dict[[listname]]) <- stri_enc_toascii(colnames(datosabiertos$dict[[listname]])) } -for (listname in names(datosabiertos$dict)){ - if (!(listname %in% c(colnames(datosabiertos$dats),"PACIENTE"))){ +for (listname in names(datosabiertos$dict)) { + if (!(listname %in% c(colnames(datosabiertos$dats), "PACIENTE"))) { datosabiertos$dict <- datosabiertos$dict[names(datosabiertos$dict) != listname] - } + } } @@ -55,12 +59,12 @@ datosabiertos$dats <- datosabiertos$dats |> colnames(datosabiertos$dats) <- stri_enc_toascii(colnames(datosabiertos$dats)) -#Creamos los datos del paquete +# Creamos los datos del paquete usethis::use_data(datosabiertos, overwrite = TRUE, version = 3, ascii = TRUE) -#Almacenamos para generar el zip de testing +# Almacenamos para generar el zip de testing datosabiertos$dats %>% write_excel_csv("pruebaCOVID19MEXICO.csv") -zip("datos_abiertos_covid19.zip","pruebaCOVID19MEXICO.csv") +zip("datos_abiertos_covid19.zip", "pruebaCOVID19MEXICO.csv") -#Reacomodamos todo el panorama +# Reacomodamos todo el panorama file.remove("pruebaCOVID19MEXICO.csv") diff --git a/docs/404.html b/docs/404.html index c0863bd..55f4dfe 100644 --- a/docs/404.html +++ b/docs/404.html @@ -31,7 +31,7 @@ covidmx - 0.7.1.0000 + 0.7.1.2000 + + + + + +
+ + + + +
+
+ + + +
+

Introducción +

+

Los siguientes análisis son ejemplos de cosas que se pueden hacer con +covidmx y han sido sugeridos por la comunidad. Si tienes un +análisis en mente que desees saber cómo programar o bien que quieras +compartir, puedes levantar un issue de Github o +escribirme en Twitter en @RodZepeda

+
+
+

Estimación de casos de COVID-19 largo por municipio +

+
+
+

Estimación del subregistro de casos +

+
+
+
+ + + +
+ + + +
+
+ + + + + + + diff --git a/docs/articles/Estudio_de_Caso_CDMX.html b/docs/articles/Estudio_de_Caso_CDMX.html index a1d52b3..7d3559b 100644 --- a/docs/articles/Estudio_de_Caso_CDMX.html +++ b/docs/articles/Estudio_de_Caso_CDMX.html @@ -33,7 +33,7 @@ covidmx - 0.7.1.0000 + 0.7.1.2000 + + + + + +
+
+
+ +
+

La funcion recorre cada uno de los sitios y verifica su existencia.

+
+ +
+

Uso

+
check_sites(covid_data = TRUE, dictionnary = TRUE)
+
+ +
+

Argumentos

+
covid_data
+

(opcional) Variable booleana TRUE si verifica los sitios de +datos y FALSE si no los verifica

+ + +
dictionnary
+

(opcional) Variable booleana TRUE si verifica los sitios del +diccionario y FALSE si no lo verifica

+ +
+
+

Valor

+ + +

Devuelve TRUE si todos los sitios web existen, FALSEen caso de que no.

+
+ +
+

Ejemplos

+
# Verificamos que existan los sitios cambiando a TRUE cualquiera:
+check_sites(covid_data = FALSE, dictionnary = FALSE)
+#>  Los sitios de descarga fueron encontrados
+#> [1] TRUE
+
+
+
+
+ + +
+ + + +
+ + + + + + + diff --git a/docs/reference/chr.html b/docs/reference/chr.html index 26d4bdd..4234a16 100644 --- a/docs/reference/chr.html +++ b/docs/reference/chr.html @@ -12,7 +12,7 @@ covidmx - 0.7.1.0000 + 0.7.1.2000