ERRO na União de planilha excel com shape de municípios usando CD_GEOCMU

421 views
Skip to first unread message

Keury Juliana

unread,
Sep 4, 2018, 10:04:42 AM9/4/18
to qgisbrasil
Bom dia. Preciso de ajuda para resolver um problema.

Tenho uma tabela no excel que possui os CD_GEOCMU dos municípios iguais as do IBGE. Entretanto tenho mais de uma linha com o mesmo geocódigo. Quando faço a união da tabela ao shape usando o Qgis 2.18.21 o programa linka apenas um linha de informação, ignorando as outras informações referente aquele município. Como faço para que essa união crie mais linhas com o mesmo GEOcodigo para que assim eu possa ter todas as informações de todas as espécies recorrente nesse município?

Se alguém puder me ajudar eu agradeço. Precisando muito.

Nairo Araújo

unread,
Sep 4, 2018, 12:52:51 PM9/4/18
to qgisb...@googlegroups.com
Na planilha do excel faça uma outra coluna com a informação que voçê deseja unir ao shape do município, como esta tabela em anexo.

Nairo Bruno de Araujo,

Graduação em andamento em Geografia. 

Universidade Federal do Piauí, UFPI, Brasil

Pesquisador do Grupo de Pesquisa cadastrado no CNPq intitulado: Geografia, Docência e Currículo - GEODOC

Estudante do Grupo de Pesquisa cadastrado no CNPq intitulado: GRUPO DE ESTUDOS EM GEOTECNOLOGIAS: PESQUISA E ENSINO (UFPI).

Vinculado ao Laboratório de Geografia Física e Meio Ambiente (GEOAMBIENTE).

Endereço para acessar este CV: http://lattes.cnpq.br/8661293131460466



--
Comunidade QGIS Brasil: http://qgisbrasil.org/
---
Você recebeu essa mensagem porque está inscrito no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para qgisb...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/qgisbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.
Tabulação_Geral.xls
Message has been deleted

Kyle Felipe

unread,
Sep 4, 2018, 1:09:35 PM9/4/18
to qgisbrasil
O seu problema é o seguinte,

Você precisa fazer uma relações de Muitos para Um... e o unioes, do qgis, só faz um para um, quando acontece de ser muitos para um, ele pega apenas o primeiro registro.....

Vc precisa unir DADOS ESPACIAIS à uma tabela...

Pegue as sede municipais do estado que quer, ou gere um ponto na supeficie para cada municipio, asim terá o geocódigo...
Depois, pode utilizar a união dos pontos com a sua tabela, assim ela vai repetir o ponto cada vez que o municipio repetir na tabela..

Esse é um video que fiz de exemplo para um colega de como usar SQL no qgis.
https://www.youtube.com/watch?v=JZN7qy8HVdQ&list=PLPN5vBZT1Usv8lVe7gvxS-gBEkrepq7M9&index=2&t=8s

A outra forma é usar o "Relações" do qgis, onde na tabela de atributos dos municipios, na forma de visualização de formulário, é possivel ver todos os dados relacionados ao municipio,

segue o blog da Sylvia Damião, que demonstra como fazer a relação.
http://www.sylviadamiao.net/2017/03/15/administrando-relacionamento-postgres-postgis-no-qgis/

Nairo Araújo

unread,
Sep 4, 2018, 1:23:04 PM9/4/18
to qgisb...@googlegroups.com
No link abaixo tem um vídeo que mostra muito bem como fazer, a diferença é que na opção "unir campo" e "campo alvo" você tem que selecionar a coluna que tem como referência o código do município


Nairo Bruno de Araujo,

Graduação em andamento em Geografia. 

Universidade Federal do Piauí, UFPI, Brasil

Pesquisador do Grupo de Pesquisa cadastrado no CNPq intitulado: Geografia, Docência e Currículo - GEODOC

Estudante do Grupo de Pesquisa cadastrado no CNPq intitulado: GRUPO DE ESTUDOS EM GEOTECNOLOGIAS: PESQUISA E ENSINO (UFPI).

Vinculado ao Laboratório de Geografia Física e Meio Ambiente (GEOAMBIENTE).

Endereço para acessar este CV: http://lattes.cnpq.br/8661293131460466


Keury Juliana

unread,
Sep 4, 2018, 1:31:43 PM9/4/18
to qgisbrasil
Obrigada Kyle.

Até cheguei a fazer a "Relação" mas depois não consegui achar o lugar que ela fala de "Clique com o icone de informação sobre o poligono e você poderá inserir informações tanto na tabela Familia como na tabela filhos." 
 Sobre gerar os pontos. Eu tenho planilhas muito grandes e com muitas espécies. Não vai ficar muito manual essa criação de pontos para relacionar as planilhas?

Grata.

Keury Juliana

unread,
Sep 4, 2018, 1:34:09 PM9/4/18
to qgisbrasil
Nairo eu assistir esse video e consegui fazer a união. Mas como vc pôde ver na planilha e como o Kyle falou eu preciso fazer a relação de muitas espécies para apenas UM geocódigo. Logo é bem mais complexo.

Grata.

Nairo Araújo

unread,
Sep 4, 2018, 1:39:45 PM9/4/18
to qgisb...@googlegroups.com
Eu não sei se eu entendi direito, mas como falei anteriormente, na linha do GEOCÓDIGO no excel, você faz várias colunas, cada coluna com uma informação e por fim faz a união.

Nairo Bruno de Araujo,

Graduação em andamento em Geografia. 

Universidade Federal do Piauí, UFPI, Brasil

Pesquisador do Grupo de Pesquisa cadastrado no CNPq intitulado: Geografia, Docência e Currículo - GEODOC

Estudante do Grupo de Pesquisa cadastrado no CNPq intitulado: GRUPO DE ESTUDOS EM GEOTECNOLOGIAS: PESQUISA E ENSINO (UFPI).

Vinculado ao Laboratório de Geografia Física e Meio Ambiente (GEOAMBIENTE).

Endereço para acessar este CV: http://lattes.cnpq.br/8661293131460466


Keury Juliana

unread,
Sep 4, 2018, 2:05:10 PM9/4/18
to qgisb...@googlegroups.com
As colunas estão ok. A questão é que o shape tem apenas um linha para cada código e minha planilha tem várias linhas para apenas um código.
Keury Juliana Nunes da Silva
Geógrafa
Telefone: (63) 98470-0289 (oi, zap)

Kyle Felipe

unread,
Sep 4, 2018, 3:03:21 PM9/4/18
to qgisbrasil
Nairo, ela precisa repetir o ponto (por exemplo) do municipio para cada vez que ele aparece na lista dela... isso o união não faz....

Hebert Guilherme de Azevedo

unread,
Sep 4, 2018, 3:13:01 PM9/4/18
to qgisbrasil
Você usará este resultado dentro do próprio QGIS ou necessita exportar para shapefile para uso em outro software? Caso vá usar dentro do próprio QGIs para fazer consultas na tabela de atributos, simbologia e identificar na tela é possível usar as relações. Caso necessite exportar teria que fazer alguns testes para ver como se comportaria.

Att

Em ter, 4 de set de 2018 às 11:04, Keury Juliana <keur...@gmail.com> escreveu:
--
Comunidade QGIS Brasil: http://qgisbrasil.org/
---
Você recebeu essa mensagem porque está inscrito no grupo "qgisbrasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para qgisbrasil+...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para qgisb...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/qgisbrasil.
Para mais opções, acesse https://groups.google.com/d/optout.


--
Hebert Guilherme de Azevedo

lattes: http://lattes.cnpq.br/6582724988395217


Keury Juliana

unread,
Sep 4, 2018, 3:20:31 PM9/4/18
to qgisb...@googlegroups.com
Boa tarde Hebert. Obrigada por responder.

Então eu gostaria que estivesse no shape pois essa informação é pra integrar um banco de dados. Passei a tarde pesquisando e nem a parte das relações eu consegui aprender. Você teria algum material que possa me ensinar ou alguma dica? Pra mim está valendo tudo. Até usar outras ferramentas que mencionaram que pode ajudar como SQL E post...

Kyle Felipe

unread,
Sep 4, 2018, 3:29:53 PM9/4/18
to qgisbrasil
estou tentando baixar os dados do acre aqui para fazer um tuto, mas o IBGE não ajuda.... assim que eu conseguir eu aviso...

Hebert Guilherme de Azevedo

unread,
Sep 4, 2018, 3:30:22 PM9/4/18
to qgisbrasil
Entendo Keury. Então a solução das relações não te atende, pois é um configuração do projeto, apenas para visualização naquele projeto. Qual a sua familiaridade com SQL? A solução mais rápida para você seria a seguinte:

Criar um Banco de dados Spatialite
Inserir sua tabela e a tabela dos municípios, contendo Geocódigo em ambas
Criar um consulta de join entre a sua tabela e a tabela de municípios, em que você copiaria a geometria do município para sua, e criar uma view algo mais menos assim:

create view tabela_espacializada as
select * from Nome_da_sua_tabela
left join camada_de_municipios using (campo_geocodigo)

Att
Hebert Guilherme de Azevedo
(31) 7531-2575

Skype: hebert.guilherme.de.azevedo
 
lattes: http://lattes.cnpq.br/6582724988395217


Keury Juliana

unread,
Sep 4, 2018, 3:43:24 PM9/4/18
to qgisb...@googlegroups.com
Hebert do céu. Programação? Estou lascada...rsrsrs.... Obrigada. Vou tentar decodificar o que vc quis me dizer. Não entendo nada disso. Mas posso passar a saber né?...rsrsrs.

Kyle Felipe

unread,
Sep 4, 2018, 3:51:04 PM9/4/18
to qgisbrasil
Keury, vc chegou a ver o meu video??
Vc vai aplicar esse código ai (um  pouco modificado)
tem como colocar aqui pra mim um geopackage (ou SHapefile com as 4 extensões zipadas) para eu poder te ajkudar???
Outra coisa.. programação não é um bicho de 7 cabeças... hj ela está muito difundida no nosso meio como uma ferramenta....
começando a estudar SQL vai te facilitar muio essas coisas,
De uma olhada nesse canal, ele vai te ajudar com umas dicas sobre como estudar..
https://www.youtube.com/channel/UCLAeX4dyujMoy4xqHvxSDpQ

Keury Juliana

unread,
Sep 4, 2018, 4:26:07 PM9/4/18
to qgisb...@googlegroups.com
Sim Kyle. Só que já estava pronto. Vi só funcionando.

Enviando arquivos para ver se pode me ajudar.
Teste_AC.xlsx
ac_municipios.zip

Nairo Araújo

unread,
Sep 4, 2018, 4:56:20 PM9/4/18
to qgisb...@googlegroups.com
Tem como você mandar uma foto ou o arquivo da sua planilha?

Nairo Bruno de Araujo,

Graduação em andamento em Geografia. 

Universidade Federal do Piauí, UFPI, Brasil

Pesquisador do Grupo de Pesquisa cadastrado no CNPq intitulado: Geografia, Docência e Currículo - GEODOC

Estudante do Grupo de Pesquisa cadastrado no CNPq intitulado: GRUPO DE ESTUDOS EM GEOTECNOLOGIAS: PESQUISA E ENSINO (UFPI).

Vinculado ao Laboratório de Geografia Física e Meio Ambiente (GEOAMBIENTE).

Endereço para acessar este CV: http://lattes.cnpq.br/8661293131460466


Nairo Araújo

unread,
Sep 4, 2018, 5:21:54 PM9/4/18
to qgisb...@googlegroups.com
image.png ESSA IMAGEM É DA TABELA DE ATRIBUTOS DA SHAPE ORIGINAL
image.png ESSA SEGUNDA IMAGEM É DA TABELA DE ATRIBUTOS DA SHAPE DEPOIS DA UNIÃO

Nairo Bruno de Araujo,

Graduação em andamento em Geografia. 

Universidade Federal do Piauí, UFPI, Brasil

Pesquisador do Grupo de Pesquisa cadastrado no CNPq intitulado: Geografia, Docência e Currículo - GEODOC

Estudante do Grupo de Pesquisa cadastrado no CNPq intitulado: GRUPO DE ESTUDOS EM GEOTECNOLOGIAS: PESQUISA E ENSINO (UFPI).

Vinculado ao Laboratório de Geografia Física e Meio Ambiente (GEOAMBIENTE).

Endereço para acessar este CV: http://lattes.cnpq.br/8661293131460466


Narcélio de Sá Pereira Filho

unread,
Sep 4, 2018, 5:47:12 PM9/4/18
to qgisb...@googlegroups.com
Galera,

Usei os dados da colega Juliana para gravar esse vídeo onde explico como trabalhar com relações 1.n no QGIS.
Creio que essa funcionalidade pode auxiliar muitos colegas no dia-a-dia.

Segue o link do vídeo: https://youtu.be/ao_xwZYXQ50

Atenciosamente 

cropped-logo_512.png
Narcélio de Sá
Mestre em Geografia - UFC
Analista de Sistema de Informação Geográfica - CAGECE
Comunidade QGISBrasil 
www.narceliodesa.com
Facebook Twitter Google Plus Youtube Linkedin

Narcélio de Sá Pereira Filho

unread,
Sep 4, 2018, 7:54:10 PM9/4/18
to qgisb...@googlegroups.com
Olá Juliana,
Pelo que eu vi tu mexeu na planilha para que os dados de cada espécie ficassem truncados em uma só linha. 
Com isso tu consegue vincular os dados a cada município com um simples join. Esse é o resultado que tu espera?


Em ter, 4 de set de 2018 às 20:38, Keury Juliana <keur...@gmail.com> escreveu:
Boa tarde. Obrigada por tentar responder minha pergunta. Mas a situação é mais complicada. Estou anexando um exemplo do arquivo que quero. Se puder me ajudar.

Preciso que as linhas que possuem o mesmo geocódigo seja associada a feição do shape que possui o geocodigo correspondente. Abra a tabela pra entender o que estou falando.

Grata.

Keury Juliana

unread,
Sep 5, 2018, 7:16:11 AM9/5/18
to qgisb...@googlegroups.com
Eu tenho várias linhas da cidade de abreulândia. Na união ela só leu a espécie tilápia e o restante ficou sem entrar na tabela. É esse problema que preciso resolver.

Em ter, 4 de set de 2018 às 18:21, Nairo Araújo <nbaar...@gmail.com> escreveu:

Keury Juliana

unread,
Sep 5, 2018, 7:20:11 AM9/5/18
to qgisb...@googlegroups.com
Olá Juliana, 
Pelo que eu vi tu mexeu na planilha para que os dados de cada espécie ficassem truncados em uma só linha. (na verdade era pra ficar truncados a apenas um geocódigo)
Com isso tu consegue vincular os dados a cada município com um simples join. Esse é o resultado que tu espera? (Tem como fazer Join sendo uma das informações tabela do excel?)

Narcélio de Sá Pereira Filho

unread,
Sep 5, 2018, 8:07:24 AM9/5/18
to qgisb...@googlegroups.com
A tu quer vincular todos os campos ou apenas a informação das espécies por geocodigo ?

Keury Juliana

unread,
Sep 5, 2018, 10:52:41 AM9/5/18
to qgisb...@googlegroups.com
Não sei como explicar Narcélio. Mas precisava de um shape com todas as informações pois vamos manipular e eles vão fazer parte de um banco de dados posteriormente.

Narcélio de Sá Pereira Filho

unread,
Sep 5, 2018, 3:47:39 PM9/5/18
to qgisb...@googlegroups.com
Juliana, boa tarde. 

Fiz outro vídeo explicando como fazer isso que tu precisa.
No caso vamos continuar usando as relações e a função relation_aggregate  da calculadora de campo.

No final o resultado é esse aqui: 

Captura de tela de 2018-09-05 16-18-15.png
Segue o link para o vídeo: https://youtu.be/_Edip1WzX4w

Atenciosamente 

Keury Juliana

unread,
Sep 6, 2018, 7:18:40 AM9/6/18
to qgisb...@googlegroups.com
Obrigada Nacélio. Muito bom o vídeo. Pra o que eu perguntei não vai resolver. Mas pra uma demanda que surgiu ontem caiu como um luva. Pois concatenar não serve pra o que eu quero, pois não vou poder usar a informação de uma espécie só e os valores de cada uma pra fazer análise. Mas pra demanda de total das espécies é interessante aparecer todas as espécies que compõe o município. Obrigada novamente por sempre nós ajudar. 

Grata.

Kyle Felipe

unread,
Sep 6, 2018, 12:25:08 PM9/6/18
to qgisbrasil
pode sim... eu fiz uma função em python para o qgis, que ela verifica dentro de um campo, se um determinado falor aparecer e retorna verdadeiro...
É a função verifica valor... aqui mostra como usar
https://github.com/kylefelipe/qgis-tips-tricks/tree/master/python/funcoes_qgis

Jorge Santos

unread,
Sep 6, 2018, 1:37:13 PM9/6/18
to qgisb...@googlegroups.com
Vamos pensar assim: 

Se um ponto dentro de um limite de município representa uma espécie e se eu tenho dez pontos dentro de um município, eu posso ter o seguinte cenário:

  • Dez espécies do mesmo tipo sendo representadas por uma única quantidade naquele município;
  • Dez espécies diferentes com os pontos representando um agrupamento.

No primeiro caso, temos um valor para cada espécie (dez pontos, dez bois cada grupo com o seu valor).

aqui_tem_boi.jpg

No segundo caso, podemos ter valores variados para cada uma das dez espécies (dez vacas, oitocentas galinhas, trezentos e noventa e oito porcos, quarenta e dois cachorros, etc.)

O código do município é uma sistematização. Ele representa o campo chave em qualquer tabela do IBGE. No exemplo que o pessoal está te ajudando até aqui, eles estão pensando na informação tabular, ou seja, armazenada na tabela. O raciocínio do pessoal está corretíssimo e eu gostaria de apresentar uma outra visão, a visão espacial.

Eu posso gerar pontos aleatórios dentro do limite de um município de interesse e prosseguir com outras análises. vamos considerar que um município X tenha 55 posições na tabela do IBGE representando o aglomerado de espécies. Eu posso gerar 55 pontos aleatórios dentro do limite do município, adicionar coordenadas XY a estes pontos e "emprestar" essas coordenadas para o dado não espacial que é a planilha do Excel. Desta forma, eu terei a distribuição das espécies por quantitativo e por município.

Esse é um exercício/análise de sobreposição. Podemos aplicar um Spatial Join nos pontos também e levar todos os  cadastros de uma planilha. Neste caso, teremos pontos representando espécies no mapa.

Jorge Santos
Instrutor de Geotecnologias
http://www.instrutorgis.com.br
jorgep...@outlook.com
whatsappWhatsApp: (61) 99616-5665
skype_jorgepsantos2002Skype: jorgepsantos2002
Perfil no LinkedInhttps://www.linkedin.com/in/jorgepsantos
Twitter: http://twitter.com/jpsantos2002


Keury Juliana

unread,
Sep 6, 2018, 3:18:30 PM9/6/18
to qgisb...@googlegroups.com
Oi Jorge obrigada por sua resposta. Nós pensamos isso aqui também. Só que eu preciso do polígono do município para fazer a representatividade. Só os pontos eu não tenho como fazer um comparativo usando a gradação por cores. Certo?

Jorge Santos

unread,
Sep 6, 2018, 3:36:21 PM9/6/18
to qgisb...@googlegroups.com
Tem como fazer símbolo graduado, esfera, torta, barra, mapa de calor, enfim, um milhão de análises podem ser realizadas com pontos.

Eu dei uma organizada nos dados Tabelas quantitativas não podem conter campos de texto, NULL ou coisas assim. Tudo que não tem valor é zero. Seu trabalho tá usando a geometria inadequada: não é para ser representado por polígono, mas sim por pontos.

Segue a primeira parte do que estou pensando. Como são muitas tarefas, é viável criar um modelo.

Jorge Santos
Instrutor de Geotecnologias
http://www.instrutorgis.com.br
jorgep...@outlook.com
whatsappWhatsApp: (61) 99616-5665
skype_jorgepsantos2002Skype: jorgepsantos2002
Perfil no LinkedInhttps://www.linkedin.com/in/jorgepsantos
Twitter: http://twitter.com/jpsantos2002


qgis_passo01_organizacao_dos_dados.wmv
especies.xlsx

Jorge Santos

unread,
Sep 6, 2018, 3:57:26 PM9/6/18
to qgisb...@googlegroups.com
Parte 02: Pontos aleatórios (O processo é manual e precisa ser automatizado):

Jorge Santos
Instrutor de Geotecnologias
http://www.instrutorgis.com.br
jorgep...@outlook.com
whatsappWhatsApp: (61) 99616-5665
skype_jorgepsantos2002Skype: jorgepsantos2002
Perfil no LinkedInhttps://www.linkedin.com/in/jorgepsantos
Twitter: http://twitter.com/jpsantos2002


Jorge Santos

unread,
Sep 6, 2018, 4:15:15 PM9/6/18
to qgisb...@googlegroups.com
Parte 03: Representação. Fiz um quantitativo por grupo de espécie. Será assim para o município de Acrelândia:

Grupo 1: Curimatã, Curimbatá
Grupo 2: Piau, piapara, piauçu, piava
...
Grupo 8: Tilápia

Os dados finais estão em anexo. Seguem algumas observações:

Obs1: Podemos pensar em diferentes símbolos para representar cada grupo (triângulos, hexágonos, quadrados, etc.).
Obs2: Podemos criar palavras do tipo "Grupo 1", "Grupo 2"... Para simbolizar. No mapa vai ter a tabela que o Narcélio fez.
Obs3: Você pode mover os pontos para onde quiser. Representação de torta é apenas uma possibilidade. Há várias.


Abraço,
Jorge Santos
Instrutor de Geotecnologias
http://www.instrutorgis.com.br
jorgep...@outlook.com
whatsappWhatsApp: (61) 99616-5665
skype_jorgepsantos2002Skype: jorgepsantos2002
Perfil no LinkedInhttps://www.linkedin.com/in/jorgepsantos
Twitter: http://twitter.com/jpsantos2002


especies_XY.csv
especies_pontos_ok.zip
grafico_de_torta.jpg

Jorge Luiz

unread,
Sep 6, 2018, 11:35:26 PM9/6/18
to qgisb...@googlegroups.com
Prezada Keury Juliana
A título de desafio tentei fazer a manipulação dos dados que passou (o shapefile, e a tabela exel).

Como gosto de trabalhar com o PostGis, fiz a conversão do shapefile para uma tabela geoespacial. Minha intensão seria criar no banco de dados um relacionamento 1:N contando que o mesmo aparecesse de alguma forma ao ser carregado no QGIS (talvez usando a ferramenta de informação aparecesse os registros relacionados da outra tabela).

Em seguida fiz a carga da tabela para o referido banco de dados (que chamei de teste2). Foi um pouco complicado, mas consegui. No entanto, não pude deixar de notar algumas coisas:
1. Na tabela de texto notei que não havia um atributo com valor único que pudesse utilizar como chave primária.
2. Havia mais de um registro para o mesmo município (cd_geomu) com a lista das espécies. Por que? Seria resultado de medições feitas em diferentes ocasiões?

Enfim isso leva a uma outra pergunta: o que se pretende fazer com esses dados? o que se pretende exibir? Talvez tenha-e que fazer agumas considerações sobre a modelagem dos dados. Talvez o negócio não seja tão simples. Ainda mais quando se pensa na organização dos dados, o que depende das regras do negócio.


Em qui, 6 de set de 2018 às 08:18, Keury Juliana <keur...@gmail.com> escreveu:


--
Jorge Luiz
teste2.sql.zip
Reply all
Reply to author
Forward
0 new messages