Oi Rafael! Tudo bem?
O código que você escreveu não é um reprex real… É um código para gerar um reprex mas não é um resultado de um reprex.
Tem um video não tão estruturado que gravei uma vez sobre isso, se for útil:
Eu adaptei o código e aqui funcionou normalmente. Veja se funciona pra você também:
obs: eu alterei os vários ifelse para um único case_when(), assim o código fica mais limpo.
pop_mun <-
readr::read_csv("https://github.com/tidyverse/readr/files/7314636/pop_mun_2002_2019.csv") |>
dplyr::mutate(
porte_pop = dplyr::case_when(pop <= 5000 ~ "Até 5000",
pop > 5000 & pop <= 10000 ~ "De 5.001 até 10.000",
pop > 10000 & pop <= 20000 ~ "De 10.001 até 20.000",
pop > 20000 & pop <= 50000 ~ "De 20.001 até 50.000",
pop > 50000 & pop <= 100000 ~ "De 50.001 até 100.000",
pop > 100000 & pop <= 500000 ~ "De 100.001 até 500.000",
pop > 500000 ~ "Maior que 500.000",
TRUE ~ NA_character_
)) |>
tidyr::drop_na(porte_pop)
#> Rows: 100080 Columns: 3
#> ── Column specification ────────────────────────────────────────────────────────
#> Delimiter: ","
#> dbl (3): ibge, ano, pop
#>
#> ℹ Use `spec()` to retrieve the full column specification for this data.
#> ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
# ver como a base ficou
dplyr::glimpse(pop_mun)
#> Rows: 100,080
#> Columns: 4
#> $ ibge <dbl> 110001, 110001, 110001, 110001, 110001, 110001, 110001, 1100…
#> $ ano <dbl> 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, …
#> $ pop <dbl> 27237, 27563, 29001, 28629, 29005, 23857, 24577, 24354, 2442…
#> $ porte_pop <chr> "De 20.001 até 50.000", "De 20.001 até 50.000", "De 20.001 a…
# criar a pasta data/
fs::dir_create("data/")
# salvar em csv
readr::write_csv(pop_mun, "data/teste.csv")
# verificar se o arquivo existe
fs::file_exists("data/teste.csv")
#> data/teste.csv
#> TRUE
# importar o arquivo salvo
readr::read_csv("data/teste.csv") |>
head()
#> Rows: 100080 Columns: 4
#> ── Column specification ────────────────────────────────────────────────────────
#> Delimiter: ","
#> chr (1): porte_pop
#> dbl (3): ibge, ano, pop
#>
#> ℹ Use `spec()` to retrieve the full column specification for this data.
#> ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
#> # A tibble: 6 × 4
#> ibge ano pop porte_pop
#> <dbl> <dbl> <dbl> <chr>
#> 1 110001 2002 27237 De 20.001 até 50.000
#> 2 110001 2003 27563 De 20.001 até 50.000
#> 3 110001 2004 29001 De 20.001 até 50.000
#> 4 110001 2005 28629 De 20.001 até 50.000
#> 5 110001 2006 29005 De 20.001 até 50.000
#> 6 110001 2007 23857 De 20.001 até 50.000
Created on 2021-10-09 by the reprex package (v2.0.1)
Talvez o erro não seja no readr em si, mas em outras coisas. O seu readr está atualizado? Uma boa é ver o resultado do devtools::session_info()
(e provavelmente os mantenedores do readr irão solicitar isso).