====== Dados e Mapas ======
São ilustrados aqui como obter, importar, manipular, combinar e visualizar em mapas temáticos dados públicos do IBGE e DadaSUS
Lembrar de mudar diretorio de trabalho se necessário
setwd("...")
Primeiro vamos obter um arquivo de mapa do [[http://www.ibge.gov.br|IBGE]]:
O mapa foi carregado do site do IBGE em
+ + + (clicar no disquete de 2007)
Na nova janela:
Escolha E500, E100 ou E2500
Escolha uma projeção .Usado: Proj_Geografica
Escolha um formato. Usado: ArcView_shp
Escolha um nível territorial.
Escolha a unidade territorial.
Salve os arquivos com extensão .shp, .shx e .dbf
Carregando pacotes maptools e sp
require(maptools)
require(sp)
Lendo o mapa no
(Site do IBGE pode ser demorado. Os [[http://leg.ufpr.br/~paulojus/mct/dados|arquivos 12mu500gc* podem ser compiados daqui]])
ac <- readShapePoly("12mu500gc")
### visualizando
plot(ac)
### atributos dos municipios (variáveis)
names(ac)
### atributos/elementos do objeto
names(attributes(ac))
### bounding box
bbox(ac)
### inspecionando os atributos (dados) dos municípios
dim(ac@data)
ac@data[1:3,]
Obtencao dos dados do [[http://www.datasus.gov.br|datasus]]
- clicar em
- clicar em
- Clicar em Abastecimento de agua - 1991, 2000
- Selecione Brasil por Municipio
- Montar a tabela assim:
- Linha: Muncipio
- Coluna: Abastecimento de Agua
- Conteudo: Moradores
- Clicar em Formato: e (no final da pg.)
- Após os dados serem mostrados, clicar em e salvar o arquivo
Alternativamente aqui os [[http://www.leg.ufpr.br/~paulojus/mct/dados/A104241200_17_213_55.csv|dados de abastecimento de agua]], do arquivo
obtidos a partir do site do DATASUS
agua <- read.csv2("A104241200_17_213_55.csv", skip=3)
system("file -bi A104241200_17_213_55.csv")
## encondings em diferentes sistemas!
dim(agua)
agua[1:3,]
### extraindo o codigo de municipios dos dados
codmund <- substr(as.character(agua[,1]), 1, 6)
codmund[1:3]
### extraindo o código do mapa com apenas 6 digitos
ac@data[1:3,]
cod6map <- substr(as.character(ac@data[,1]), 1, 6)
head(cod6map, 3)
### selecionando os dados do ACRE
### e preservando a ordem do mapa
odat <- merge(data.frame(cod=cod6map),
data.frame(cod=codmund, agua[,-1]), sort=FALSE)
dim(odat)
names(odat)
table(odat$cod==cod6map) ### verifica ordem
### adiciona os dados ao SpatialPolygons
ac@data <- data.frame(ac@data, odat[,-1])
### proporcao de rede geral
ac@data$prg <- (odat[,2]+odat[,3])/odat[,10]
spplot(ac, "prg")
spplot(ac, "prg", col.regions=heat.colors(16))
### visualiza no mapa
### criando 3 categorias
cat3 <- findInterval(ac$prg, c(0, .12, .25, 1))
table(cat3)
### três cores
cores3 <- c("red", "orange", "yellow")
### plotando o mapa temático
par(mar=c(0,0,0,0))
plot(ac, col=cores3[cat3])
legend("topright", leglabs(c(0,12,25,1), "<", ">"),
fill=cores3, bty="n", cex=2)
Uma análise:
### carrega pacote spdep
require(spdep)
args(EBImoran.mc)
nb <- poly2nb(ac)
nb
plot(nb, coordinates(ac), add=T)
nbw <- nb2listw(nb)
eb <- EBImoran.mc(odat[,10], odat[,2]+odat[,3], nbw, 999)
eb
HELP !!!
help(EBImoran.mc) ## ou simplesmente ?EBImoran.mc
## tipos: "text", "html", "postscript", "ps", "pdf".