Descompactar base em zip e ler

Olá, pessoal, tudo bem?

Gostaria de saber como vocês costumam fazer quando há alguma base que está em zip e também em um site, por exemplo:

http://www.mdic.gov.br/balanca/bd/comexstat-bd/ncm/EXP_COMPLETA.zip

Atualmente, eu faço desse jeito:


temp <- tempfile()

download.file(url = "http://www.mdic.gov.br/balanca/bd/comexstat-bd/ncm/EXP_COMPLETA.zip",
              destfile = temp)

datazip <- unzip(temp, files = 'EXP_COMPLETA.csv')

dados <- read_csv2(datazip)

No entanto, creio que com a criação do tidyverse e mais atualizações do R, esse modo seja considerado arcaico. Sendo assim, gostaria de saber se alguém já passou por isso e possui algum cógido mais elegante e mais interessante de se ler.

Como sempre, muito obrigado!

Bom dia Rafael!

Segue abaixo o código com a forma que eu costumo fazer, mas não sei se essa é a forma mais elegante. A maior diferença é que eu salvo o arquivo no computador (por motivos de reprodutibilidade e também receio do arquivo original ser apagado e não conseguir fazer download depois; além disso também consigo executar o código de análise caso esteja sem internet - partindo da etapa de abrir o csv).

Vou acompanhar o post pois também quero saber se existem formas mais elegantes para fazer isso!

download.file(url = "http://www.mdic.gov.br/balanca/bd/comexstat-bd/ncm/EXP_COMPLETA.zip", # url do arquivo para baixar
              destfile = "data/EXP_COMPLETA.zip") # arquivo de destino (incluindo em qual pasta deve fazer o download)

datazip <- unzip("data/EXP_COMPLETA.zip", # arquivo zip para descompactar
                 exdir = "data") # local para descompactar: pasta data

dados <- readr::read_csv2("data/EXP_COMPLETA.csv")  # abrir o arquivo csv

> sessioninfo::session_info()
- Session info --------------------------------------------------------------------------------
 setting  value                       
 version  R version 4.0.2 (2020-06-22)
 os       Windows 10 x64              
 system   x86_64, mingw32             
 ui       RStudio                     
 language (EN)                        
 collate  Portuguese_Brazil.1252      
 ctype    Portuguese_Brazil.1252      
 tz       America/Sao_Paulo           
 date     2020-09-16                  

- Packages ------------------------------------------------------------------------------------
 package     * version date       lib source        
 assertthat    0.2.1   2019-03-21 [1] CRAN (R 4.0.2)
 cli           2.0.2   2020-02-28 [1] CRAN (R 4.0.2)
 crayon        1.3.4   2017-09-16 [1] CRAN (R 4.0.2)
 ellipsis      0.3.1   2020-05-15 [1] CRAN (R 4.0.2)
 fansi         0.4.1   2020-01-08 [1] CRAN (R 4.0.2)
 glue          1.4.2   2020-08-27 [1] CRAN (R 4.0.2)
 hms           0.5.3   2020-01-08 [1] CRAN (R 4.0.2)
 lifecycle     0.2.0   2020-03-06 [1] CRAN (R 4.0.2)
 magrittr      1.5     2014-11-22 [1] CRAN (R 4.0.2)
 pillar        1.4.6   2020-07-10 [1] CRAN (R 4.0.2)
 pkgconfig     2.0.3   2019-09-22 [1] CRAN (R 4.0.2)
 R6            2.4.1   2019-11-12 [1] CRAN (R 4.0.2)
 Rcpp          1.0.5   2020-07-06 [1] CRAN (R 4.0.2)
 readr         1.3.1   2018-12-21 [1] CRAN (R 4.0.2)
 rlang         0.4.7   2020-07-09 [1] CRAN (R 4.0.2)
 rstudioapi    0.11    2020-02-07 [1] CRAN (R 4.0.2)
 sessioninfo   1.1.1   2018-11-05 [1] CRAN (R 4.0.2)
 tibble        3.0.3   2020-07-10 [1] CRAN (R 4.0.2)
 vctrs         0.3.2   2020-07-15 [1] CRAN (R 4.0.2)
 withr         2.2.0   2020-04-20 [1] CRAN (R 4.0.2)
 yaml          2.2.1   2020-02-01 [1] CRAN (R 4.0.2)

[1] D:/Program Files/R/R-4.0.2/library
2 curtidas