====== 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".