【发布时间】:2021-08-12 03:17:11
【问题描述】:
我正在尝试将巴西每个州中包含的信息分组到区域中。
最初我通过函数table检查了这些在每个州的分布情况。
table(Dados$Estado)
ACRE ALAGOAS
574 2184
AMAPÁ AMAZONAS
728 2624
BAHIA CEARÁ
9818 5694
DISTRITO FEDERAL ESPÍRITO SANTO
17497 4289
GOIÁS MARANHÃO
5896 2705
MATO GROSSO MATO GROSSO DO SUL
2984 2683
MINAS GERAIS PARÁ
20858 4714
PARAÍBA PARANÁ
3428 10608
PERNAMBUCO PIAUÍ
6599 1908
RIO DE JANEIRO RIO GRANDE DO NORTE
26787 2858
RIO GRANDE DO SUL RONDÔNIA
11739 1665
RORAIMA SANTA CATARINA
514 7246
SÃO PAULO SERGIPE
51701 1693
TOCANTINS
1209
为了完成我想要的,我最初尝试使用ifelse 字符串如下,但是,当再次执行创建的名为regions 的变量的table 函数时,它包含按区域分组的每个状态的信息,它没有正确显示值,也就是说,计数应该更高,因为我将每个状态分组在其各自的区域中。我也试过使用dplyr包的case_when函数,但是问题依然存在。
Dados$Regioes <- ifelse(Dados$Estado == c("SÃO PAULO","MINAS GERAIS", "ESPÍRITO SANTO", "RIO DE JANEIRO"), "Sudeste",
ifelse(Dados$Estado == c("PARANÁ","SANTA CATARINA", "RIO GRANDE DO SUL"), "Sul",
ifelse(Dados$Estado == c("MATO GROSSO DO SUL", "MATO GROSSO", "GOIÁS","DISTRITO FEDERAL"), "Centro-Oeste",
ifelse(Dados$Estado == c("AMAZONAS", "ACRE", "RONDÔNIA","RORAIMA","PARÁ","TOCANTINS","AMAPÁ"), "Norte",
ifelse(Dados$Estado == c("BAHIA", "SERGIPE", "ALAGOAS","PERNAMBUCO","PARAÍBA","RIO GRANDE DO NORTE","CEARÁ","PIAUÍ","MARANHÃO"), "Nordeste",NA)))))
table(Dados$Regioes)
Centro-Oeste Nordeste Norte
7338 4052 1707
Sudeste Sul
25786 9892
library(dplyr)
Dados$Regioes <- case_when(
Dados$Estado == c("SÃO PAULO","MINAS GERAIS", "ESPÍRITO SANTO", "RIO DE JANEIRO")~ "Sudeste",
Dados$Estado == c("PARANÁ","SANTA CATARINA", "RIO GRANDE DO SUL")~"Sul",
Dados$Estado == c("MATO GROSSO DO SUL", "MATO GROSSO", "GOIÁS","DISTRITO FEDERAL")~"Centro-Oeste",
Dados$Estado == c("AMAZONAS", "ACRE", "RONDÔNIA","RORAIMA","PARÁ","TOCANTINS","AMAPÁ")~ "Norte",
Dados$Estado == c("BAHIA", "SERGIPE", "ALAGOAS","PERNAMBUCO","PARAÍBA","RIO GRANDE DO NORTE","CEARÁ","PIAUÍ","MARANHÃO")~"Nordeste")
table(Dados$Regioes)
Centro-Oeste Nordeste Norte
7338 4052 1707
Sudeste Sul
25786 9892
【问题讨论】:
-
您是否有可能使用geobr 获得您想要的东西?这是一个 R 包,可让您快速轻松地访问巴西的官方空间数据集。
-
如果没有,如果您提供a complete minimal reproducible example,我们更有可能为您提供帮助,即简单的示例数据,以解决您的问题。我们可以从中工作并使用它来向您展示如何回答您的问题。我也会推荐看看这篇文章; how do I ask a good question.
-
嗨,埃里克!感谢您的反馈。我想创建一个名为“Regions”的新变量,其中包含各州的分组信息。我从未与
geobr合作过,你呢?如果是这样,你能想出一个解决方案吗? -
我没有使用过
geobr包,我听说过。尽管您可能有兴趣探索它。证明你已经付出了一些努力通常是件好事。如果您想找到问题的直接解决方案,我建议您查看case_when函数表单dplyr dplyr.tidyverse.org/reference/case_when.html(PS。我无法从这个工作站访问谷歌驱动器..)
标签: r database if-statement data-structures statistics