[OT] Distancias entre municipios

Caros, Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros? Estava precisando deste tipo de dado. Atenciosamente, Leandro Lins Marino Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 ( (21) 2103-9600 R.:236 * <mailto:leandro@cesgranrio.org.br> leandro@cesgranrio.org.br P Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO AMBIENTE Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos. Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a.

Leandro, Deve ter sim. Mas se não tiver, o que vou dizer pode ser uma possível solução. Quando eu usava gps de trilha para trabalhos agronomicos eu usava o GPSTrackMaker (http://www.gpstm.com/pages.php?article=51&lang=port). Você pode baixar o mapa do brasil no programa ( http://www.gpstm.com/maps.php?lang=port) e exportar as coordenadas das cidades e ler no R. No R você calcula a distâncias. Mas acredito em uma solução mais direta, como um shape do brasil já com as cidades. À disposição. Walmes. ========================================================================== Walmes Marques Zeviani LEG (Laboratório de Estatística e Geoinformação, 25.450418 S, 49.231759 W) Departamento de Estatística - Universidade Federal do Paraná fone: (+55) 41 3361 3573 VoIP: (3361 3600) 1053 1173 e-mail: walmes@ufpr.br twitter: @walmeszeviani homepage: http://www.leg.ufpr.br/~walmes linux user number: 531218 ==========================================================================

Cara, nunca vi isso. Mas se você tiver coordenadas dos mesmos, pode conseguir calculando as distancias usando até o R mesmo. []s Leonard de Assis assis <dot> leonard <at> gmail <dot> com Em 01/11/2011 15:55, Leandro Marino escreveu:
Caros,
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?
Estava precisando deste tipo de dado.
Atenciosamente, *Leandro Lins Marino** */Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 //(// //(21) 2103-9600 R.:236 //*//leandro@cesgranrio.org.br <mailto:leandro@cesgranrio.org.br>/
P* **Antes de imprimir**pense em sua responsabilidade e compromisso com o* *MEIO AMBIENTE*
Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos.
Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Em 1/11/2011 14:55, Leandro Marino escreveu:
Caros,
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?
Estava precisando deste tipo de dado.
Leandro, Para que tipo de distância você precisa essa informação? Se for a distância para deslocamento entre eles, você não vai precisar de 15459580 de distâncias, vai¹? A distância calculável via diferença de coordenadas não vai levar em conta a existência de estradas/caminhos ou se a única forma de comunicação entre certos municípios é fluvial. Outro problema é a definição de distância entre municípios quando você tem alguns com áreas tão grandes como Oriximiná, PA com área 107.603 km² (isso mesmo cento e sete mil e seiscentos e três quilômetros quadrados)!!! -- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/ [1] considerando que o Brasil tem 5561 municípios...

Leandro, Se voce procurar no histório ou nabble da lista, o Henrique postou uma solução para o mesmo problema, a resposta dará a distância euclidiana entre os centróides dos municipios. []'s Márcio Nicolau Em 1 de novembro de 2011 18:52, Cesar Rabak <cesar.rabak@gmail.com>escreveu:
Em 1/11/2011 14:55, Leandro Marino escreveu:
Caros,
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?
Estava precisando deste tipo de dado.
Leandro,
Para que tipo de distância você precisa essa informação? Se for a distância para deslocamento entre eles, você não vai precisar de 15459580 de distâncias, vai¹?
A distância calculável via diferença de coordenadas não vai levar em conta a existência de estradas/caminhos ou se a única forma de comunicação entre certos municípios é fluvial.
Outro problema é a definição de distância entre municípios quando você tem alguns com áreas tão grandes como Oriximiná, PA com área 107.603 km² (isso mesmo cento e sete mil e seiscentos e três quilômetros quadrados)!!!
-- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/
[1] considerando que o Brasil tem 5561 municípios...
______________________________**_________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/**cgi-bin/mailman/listinfo/r-br<https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-**guia<http://www.leg.ufpr.br/r-br-guia>) e forneça código mínimo reproduzível.

Pois é Marcio, Minha pergunta é se a distância entre centróides de municípios realmente é o quê se precisa nesse caso... Em 1/11/2011 22:46, Marcio Nicolau escreveu:
Leandro,
Se voce procurar no histório ou nabble da lista, o Henrique postou uma solução para o mesmo problema, a resposta dará a distância euclidiana entre os centróides dos municipios.
[]'s
Márcio Nicolau
Em 1 de novembro de 2011 18:52, Cesar Rabak <cesar.rabak@gmail.com <mailto:cesar.rabak@gmail.com>> escreveu:
Em 1/11/2011 14:55, Leandro Marino escreveu:
Caros,
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?
Estava precisando deste tipo de dado.
Leandro,
Para que tipo de distância você precisa essa informação? Se for a distância para deslocamento entre eles, você não vai precisar de 15459580 de distâncias, vai¹?
A distância calculável via diferença de coordenadas não vai levar em conta a existência de estradas/caminhos ou se a única forma de comunicação entre certos municípios é fluvial.
Outro problema é a definição de distância entre municípios quando você tem alguns com áreas tão grandes como Oriximiná, PA com área 107.603 km² (isso mesmo cento e sete mil e seiscentos e três quilômetros quadrados)!!!
-- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/
[1] considerando que o Brasil tem 5561 municípios...
_________________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br <mailto:R-br@listas.c3sl.ufpr.br> https://listas.inf.ufpr.br/__cgi-bin/mailman/listinfo/r-br <https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-__guia <http://www.leg.ufpr.br/r-br-guia>) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/

Caros, na realidade precisaria das distâncias considerando as vias de acesso do município e não os centróides, apesar de ser uma aproximação razoável.. Se não tiver outra possibilidade poderei fazer desta forma. Abraços, Atenciosamente, Leandro Marino http://www.leandromarino.com.br (Fotógrafo) http://est.leandromarino.com.br/Blog (Estatístico) Cel.: + 55 21 9845-7707 Cel.: + 55 21 8777-7907 Em 2 de novembro de 2011 12:16, Cesar Rabak <cesar.rabak@gmail.com> escreveu:
pergunta é se a distância entre centróides de municípi

Oi Leandro e demais colegas, A base shape é disponibilizada pelo IBGE no seguinte link: ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/ Um abraço e até mais, Ricardo. Em 1 de novembro de 2011 15:55, Leandro Marino <leandro@cesgranrio.org.br>escreveu:
Caros,****
** **
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?****
** **
Estava precisando deste tipo de dado.****
** **
Atenciosamente, *Leandro Lins Marino** **Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 **(** **(21) 2103-9600 R.:236 ***** leandro@cesgranrio.org.br*
** **
P* **Antes de imprimir* *pense em sua responsabilidade e compromisso com o* *MEIO AMBIENTE* ****
** **
Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos. ****
Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a.****
** **
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Professor Adjunto - área Estatística Departamento de Matemática Universidade Federal de Ouro Preto

Realmente, para uma área tão grande, me parece melhor usar distâncias euclidianas. Calcular as distâncias por vias terrestres entre cada par de municípios é uma tarefa que demandaria um trabalho gigantesco, pois não existem bases com essas informações (completas). Dependendo do tipo do problema em estudo, é uma informação que não faz muito sentido. Eu posso ter um trecho de via de 20 km que consigo percorrer em 10 minutos (a 120 km/h) e posso ter outro com a mesma extensão, mas com condições ruins de pavimentação ou de topografia, na qual levarei muito mais tempo. Só completando um pouco as opiniões de alguns. Saudações. Mário 2011/11/2 Ricardo Tavares <rtavares77@gmail.com>
Oi Leandro e demais colegas,
A base shape é disponibilizada pelo IBGE no seguinte link:
ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/
Um abraço e até mais, Ricardo.
Em 1 de novembro de 2011 15:55, Leandro Marino <leandro@cesgranrio.org.br>escreveu:
Caros,****
** **
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?****
** **
Estava precisando deste tipo de dado.****
** **
Atenciosamente, *Leandro Lins Marino** **Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 **(** **(21) 2103-9600 R.:236 ***** leandro@cesgranrio.org.br*
** **
P* **Antes de imprimir* *pense em sua responsabilidade e compromisso com o* *MEIO AMBIENTE* ****
** **
Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos. ****
Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a.*** *
** **
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Professor Adjunto - área Estatística Departamento de Matemática Universidade Federal de Ouro Preto
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Existe alguma forma de converter essa distância euclidiana entre centroides de municípios em cm, m, km? Em 2 de novembro de 2011 22:47, Mario Azevedo [via R-br] < ml-node+s2285057n3984003h70@n4.nabble.com> escreveu:
Realmente, para uma área tão grande, me parece melhor usar distâncias euclidianas. Calcular as distâncias por vias terrestres entre cada par de municípios é uma tarefa que demandaria um trabalho gigantesco, pois não existem bases com essas informações (completas). Dependendo do tipo do problema em estudo, é uma informação que não faz muito sentido. Eu posso ter um trecho de via de 20 km que consigo percorrer em 10 minutos (a 120 km/h) e posso ter outro com a mesma extensão, mas com condições ruins de pavimentação ou de topografia, na qual levarei muito mais tempo.
Só completando um pouco as opiniões de alguns.
Saudações.
Mário
2011/11/2 Ricardo Tavares <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=0>
Oi Leandro e demais colegas,
A base shape é disponibilizada pelo IBGE no seguinte link:
ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/
Um abraço e até mais, Ricardo.
Em 1 de novembro de 2011 15:55, Leandro Marino <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=1>
escreveu:
Caros,****
** **
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?****
** **
Estava precisando deste tipo de dado.****
** **
Atenciosamente, *Leandro Lins Marino** **Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 * *(** **<a href="tel:%2821%29%202103-9600" value="+552121039600" target="_blank">(21) 2103-9600 R.:236 ***** [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=2> *
** **
P* **Antes de imprimir* *pense em sua responsabilidade e compromisso com o* *MEIO AMBIENTE* ****
** **
Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos. ****
Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a.** **
** **
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=3> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Professor Adjunto - área Estatística Departamento de Matemática Universidade Federal de Ouro Preto
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=4> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=5> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
------------------------------ If you reply to this email, your message will be added to the discussion below:
http://r-br.2285057.n4.nabble.com/R-br-OT-Distancias-entre-municipios-tp3964... To unsubscribe from R-br, click here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>.
-- Saudações, Pedro Rafael Diniz Marinho. Estatístico - Secretaria de Estado da Saúde - PB.

Sim. O programa irá calcular essa matriz de distâncias e você pode estabelecer a unidade de medida. Lembrando que você deve tomar cuidado porque, talvez, o que lhe interesse seja o centróide da área da sede do município e não da da área total. Para alguns municípios a diferença pode ser grande. 2011/11/3 Pedro Rafael <pedro.rafael.marinho@gmail.com>
Existe alguma forma de converter essa distância euclidiana entre centroides de municípios em cm, m, km?
Em 2 de novembro de 2011 22:47, Mario Azevedo [via R-br] < ml-node+s2285057n3984003h70@n4.nabble.com> escreveu:
Realmente, para uma área tão grande, me parece melhor usar distâncias euclidianas. Calcular as distâncias por vias terrestres entre cada par de municípios é uma tarefa que demandaria um trabalho gigantesco, pois não existem bases com essas informações (completas). Dependendo do tipo do problema em estudo, é uma informação que não faz muito sentido. Eu posso ter um trecho de via de 20 km que consigo percorrer em 10 minutos (a 120 km/h) e posso ter outro com a mesma extensão, mas com condições ruins de pavimentação ou de topografia, na qual levarei muito mais tempo.
Só completando um pouco as opiniões de alguns.
Saudações.
Mário
2011/11/2 Ricardo Tavares <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=0>
Oi Leandro e demais colegas,
A base shape é disponibilizada pelo IBGE no seguinte link:
ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/
Um abraço e até mais, Ricardo.
Em 1 de novembro de 2011 15:55, Leandro Marino <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=1>
escreveu:
Caros,****
** **
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?****
** **
Estava precisando deste tipo de dado.****
** **
Atenciosamente, *Leandro Lins Marino** **Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 * *(** **<a href="tel:%2821%29%202103-9600" value="+552121039600" target="_blank">(21) 2103-9600 R.:236 ***** [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=2> *
** **
P* **Antes de imprimir* *pense em sua responsabilidade e compromisso com o* *MEIO AMBIENTE* ****
** **
Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos. ****
Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a.* ***
** **
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=3>
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Professor Adjunto - área Estatística Departamento de Matemática Universidade Federal de Ouro Preto
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=4>
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=5> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
------------------------------ If you reply to this email, your message will be added to the discussion below:
http://r-br.2285057.n4.nabble.com/R-br-OT-Distancias-entre-municipios-tp3964... To unsubscribe from R-br, click here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>.
-- Saudações, Pedro Rafael Diniz Marinho. Estatístico - Secretaria de Estado da Saúde - PB.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

A matriz será muito grande 5566 x 5566 = 30980356 elementos. Se cada elemento for um número real, ele consumirá, no mínimo, 4 bytes de memória, totalizando algo perto de 118 Mbytes. Não sei quais são os limites, mas me parece que deve ficar difícil tratar de um "bicho" desse tamanho. sds. 2011/11/3 Mario Azevedo <mario.azevedo@gmail.com>
Sim. O programa irá calcular essa matriz de distâncias e você pode estabelecer a unidade de medida.
Lembrando que você deve tomar cuidado porque, talvez, o que lhe interesse seja o centróide da área da sede do município e não da da área total. Para alguns municípios a diferença pode ser grande.
2011/11/3 Pedro Rafael <pedro.rafael.marinho@gmail.com>
Existe alguma forma de converter essa distância euclidiana entre centroides de municípios em cm, m, km?
Em 2 de novembro de 2011 22:47, Mario Azevedo [via R-br] < ml-node+s2285057n3984003h70@n4.nabble.com> escreveu:
Realmente, para uma área tão grande, me parece melhor usar distâncias euclidianas. Calcular as distâncias por vias terrestres entre cada par de municípios é uma tarefa que demandaria um trabalho gigantesco, pois não existem bases com essas informações (completas). Dependendo do tipo do problema em estudo, é uma informação que não faz muito sentido. Eu posso ter um trecho de via de 20 km que consigo percorrer em 10 minutos (a 120 km/h) e posso ter outro com a mesma extensão, mas com condições ruins de pavimentação ou de topografia, na qual levarei muito mais tempo.
Só completando um pouco as opiniões de alguns.
Saudações.
Mário
2011/11/2 Ricardo Tavares <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=0>
Oi Leandro e demais colegas,
A base shape é disponibilizada pelo IBGE no seguinte link:
ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/
Um abraço e até mais, Ricardo.
Em 1 de novembro de 2011 15:55, Leandro Marino <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=1>
escreveu:
Caros,****
** **
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?****
** **
Estava precisando deste tipo de dado.****
** **
Atenciosamente, *Leandro Lins Marino** **Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 * *(** **<a href="tel:%2821%29%202103-9600" value="+552121039600" target="_blank">(21) 2103-9600 R.:236 ***** [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=2> *
** **
P* **Antes de imprimir* *pense em sua responsabilidade e compromisso com o* *MEIO AMBIENTE* ****
** **
Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos. ****
Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a. ****
** **
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=3>
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Professor Adjunto - área Estatística Departamento de Matemática Universidade Federal de Ouro Preto
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=4>
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=5> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
------------------------------ If you reply to this email, your message will be added to the discussion below:
http://r-br.2285057.n4.nabble.com/R-br-OT-Distancias-entre-municipios-tp3964... To unsubscribe from R-br, click here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>.
-- Saudações, Pedro Rafael Diniz Marinho. Estatístico - Secretaria de Estado da Saúde - PB.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Bom dia pessoal, Tá aí uma ideia usando o google maps. Parece estar funcionando bem, mas ainda não testei direito. Notem que eu escolhi usar sempre a primeira rota que o gmaps sugere (a mais rápida e não a mais curta.) Cada execução leva quase 1 s então deve demorar uma eternidade pra todos os municípios. E pra piorar eu só consegui rodar essa função usando um núcleo, parece não ser possível executar a readLines com mais de um ao mesmo tempo (talvez o problema seja com o *snow*.) Eu não sei usar muito bem esses *encodings* então não reparem nessa parte, foi tentativa e erro mesmo. #código: distancia <- function(cidade1, uf1, cidade2, uf2){ link <- paste( "http://maps.google.com/maps?saddr=", cidade1, "+-+", uf1, ",+Brasil&daddr=", cidade2, "+-+", uf2, ",+Brasil&hl=pt-BR&ie=UTF8", sep="") link <- iconv(link, 'latin1', 'UTF-8') Encoding(link) <- 'bytes' pagina <- readLines(url(link)) linha <- grep('<div class="altroute-rcol altroute-info"> <span>', pagina) distancia <- pagina[linha] distancia <- strsplit(distancia, '<div class="altroute-rcol altroute-info"> <span>')[[1]][2] distancia <- strsplit(distancia, '</span>')[[1]][1] return(list(distancia = distancia, link=link)) } distancia("Brasília", "DF", "Pirenópolis", "GO") distancia("Brasília", "DF", "Goiânia", "GO") distancia("Brasília", "DF", "Natal", "RN") distancia("Brasília", "DF", "Florianópolis", "SC") distancia("Brasília", "DF", "Porto Alegre", "RS") Em 4 de novembro de 2011 00:31, Mario Azevedo <mario.azevedo@gmail.com>escreveu:
A matriz será muito grande 5566 x 5566 = 30980356 elementos. Se cada elemento for um número real, ele consumirá, no mínimo, 4 bytes de memória, totalizando algo perto de 118 Mbytes. Não sei quais são os limites, mas me parece que deve ficar difícil tratar de um "bicho" desse tamanho.
sds.
2011/11/3 Mario Azevedo <mario.azevedo@gmail.com>
Sim. O programa irá calcular essa matriz de distâncias e você pode estabelecer a unidade de medida.
Lembrando que você deve tomar cuidado porque, talvez, o que lhe interesse seja o centróide da área da sede do município e não da da área total. Para alguns municípios a diferença pode ser grande.
2011/11/3 Pedro Rafael <pedro.rafael.marinho@gmail.com>
Existe alguma forma de converter essa distância euclidiana entre centroides de municípios em cm, m, km?
Em 2 de novembro de 2011 22:47, Mario Azevedo [via R-br] < ml-node+s2285057n3984003h70@n4.nabble.com> escreveu:
Realmente, para uma área tão grande, me parece melhor usar distâncias euclidianas. Calcular as distâncias por vias terrestres entre cada par de municípios é uma tarefa que demandaria um trabalho gigantesco, pois não existem bases com essas informações (completas). Dependendo do tipo do problema em estudo, é uma informação que não faz muito sentido. Eu posso ter um trecho de via de 20 km que consigo percorrer em 10 minutos (a 120 km/h) e posso ter outro com a mesma extensão, mas com condições ruins de pavimentação ou de topografia, na qual levarei muito mais tempo.
Só completando um pouco as opiniões de alguns.
Saudações.
Mário
2011/11/2 Ricardo Tavares <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=0>
Oi Leandro e demais colegas,
A base shape é disponibilizada pelo IBGE no seguinte link:
ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/
Um abraço e até mais, Ricardo.
Em 1 de novembro de 2011 15:55, Leandro Marino <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=1>
escreveu:
Caros,****
** **
Por acaso alguém sabe me dizer se existe em algum local uma tabela / matriz de distancias entre TODOS os municípios brasileiros?****
** **
Estava precisando deste tipo de dado.****
** **
Atenciosamente, *Leandro Lins Marino** **Centro de Avaliação Fundação CESGRANRIO Rua Santa Alexandrina, 1011 - 2º andar Rio de Janeiro, RJ - CEP: 20261-903 * *(** **<a href="tel:%2821%29%202103-9600" value="+552121039600" target="_blank">(21) 2103-9600 R.:236 ***** [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=2> *
** **
P* **Antes de imprimir* *pense em sua responsabilidade e compromisso com o* *MEIO AMBIENTE* ****
** **
Esta mensagem, incluindo seus anexos, pode conter informacoes privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou arquivamento sao proibidos. ****
Portanto, se você recebeu esta mensagem por engano, por favor, nos informe respondendo imediatamente a este e-mail e em seguida apague-a. ****
** **
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=3>
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Professor Adjunto - área Estatística Departamento de Matemática Universidade Federal de Ouro Preto
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=4>
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=5> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
------------------------------ If you reply to this email, your message will be added to the discussion below:
http://r-br.2285057.n4.nabble.com/R-br-OT-Distancias-entre-municipios-tp3964... To unsubscribe from R-br, click here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>.
-- Saudações, Pedro Rafael Diniz Marinho. Estatístico - Secretaria de Estado da Saúde - PB.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Lucas, provavelmente está tudo funcionando bem aí no seu computador, mas fui rodar seu código e tive problemas. > #código: > distancia <- function(cidade1, uf1, cidade2, uf2){ + link <- paste( "http://maps.google.com/maps?saddr=", cidade1, "+-+", uf1, ",+Brasil&daddr=", cidade2, "+-+", uf2, ",+Brasil&hl=pt-BR&ie=UTF8", sep="") + link <- iconv(link, 'latin1', 'UTF-8') + Encoding(link) <- 'bytes' + + pagina <- readLines(url(link)) + + linha <- grep('<div class="altroute-rcol altroute-info"> <span>', pagina) + distancia <- pagina[linha] + distancia <- strsplit(distancia, '<div class="altroute-rcol altroute-info"> <span>')[[1]][2] + distancia <- strsplit(distancia, '</span>')[[1]][1] + return(list(distancia = distancia, link=link)) + } > > distancia("Brasília", "DF", "Pirenópolis", "GO") Erro em strsplit(distancia, "<div class=\"altroute-rcol altroute-info\"> <span>")[[1]] : índice fora de limites Além disso: Mensagens de aviso perdidas: 1: In readLines(url(link)) : linha final incompleta encontrada em ' http://maps.google.com/maps?saddr=Brasà lia+-+DF,+Brasil&daddr=Pirenópolis+-+GO,+Brasil&hl=pt-BR&ie=UTF8' 2: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : string de entrada 1 é inválida nesse locale 3: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : string de entrada 161 é inválida nesse locale 4: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : string de entrada 240 é inválida nesse locale 5: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : string de entrada 248 é inválida nesse locale > O erro está na função Enconding, mas não consegui entender muito bem do que se trata. Tenho interesse nessa função e gostaria de fazr funcionar aqui. Você tem alguma luz? Obrigado, Paulo Em 4 de novembro de 2011 12:20, Lucas Barbosa <lucasbcr@gmail.com> escreveu: > Bom dia pessoal, > Tá aí uma ideia usando o google maps. Parece estar funcionando bem, mas > ainda não testei direito. Notem que eu escolhi usar sempre a primeira rota > que o gmaps sugere (a mais rápida e não a mais curta.) > Cada execução leva quase 1 s então deve demorar uma eternidade pra todos > os municípios. E pra piorar eu só consegui rodar essa função usando um > núcleo, parece não ser possível executar a readLines com mais de um ao > mesmo tempo (talvez o problema seja com o *snow*.) > Eu não sei usar muito bem esses *encodings* então não reparem nessa > parte, foi tentativa e erro mesmo. > > #código: > distancia <- function(cidade1, uf1, cidade2, uf2){ > link <- paste( "http://maps.google.com/maps?saddr=", cidade1, > "+-+", uf1, ",+Brasil&daddr=", cidade2, "+-+", uf2, > ",+Brasil&hl=pt-BR&ie=UTF8", sep="") > link <- iconv(link, 'latin1', 'UTF-8') > Encoding(link) <- 'bytes' > > pagina <- readLines(url(link)) > > linha <- grep('<div class="altroute-rcol altroute-info"> <span>', > pagina) > distancia <- pagina[linha] > distancia <- strsplit(distancia, '<div class="altroute-rcol > altroute-info"> <span>')[[1]][2] > distancia <- strsplit(distancia, '</span>')[[1]][1] > return(list(distancia = distancia, link=link)) > } > > distancia("Brasília", "DF", "Pirenópolis", "GO") > distancia("Brasília", "DF", "Goiânia", "GO") > distancia("Brasília", "DF", "Natal", "RN") > distancia("Brasília", "DF", "Florianópolis", "SC") > distancia("Brasília", "DF", "Porto Alegre", "RS") > > Em 4 de novembro de 2011 00:31, Mario Azevedo <mario.azevedo@gmail.com>escreveu: > > A matriz será muito grande 5566 x 5566 = 30980356 elementos. Se cada >> elemento for um número real, ele consumirá, no mínimo, 4 bytes de memória, >> totalizando algo perto de 118 Mbytes. Não sei quais são os limites, mas me >> parece que deve ficar difícil tratar de um "bicho" desse tamanho. >> >> sds. >> >> >> 2011/11/3 Mario Azevedo <mario.azevedo@gmail.com> >> >>> Sim. O programa irá calcular essa matriz de distâncias e você pode >>> estabelecer a unidade de medida. >>> >>> Lembrando que você deve tomar cuidado porque, talvez, o que lhe >>> interesse seja o centróide da área da sede do município e não da da área >>> total. Para alguns municípios a diferença pode ser grande. >>> >>> 2011/11/3 Pedro Rafael <pedro.rafael.marinho@gmail.com> >>> >>>> Existe alguma forma de converter essa distância euclidiana entre >>>> centroides de municípios em cm, m, km? >>>> >>>> Em 2 de novembro de 2011 22:47, Mario Azevedo [via R-br] < >>>> ml-node+s2285057n3984003h70@n4.nabble.com> escreveu: >>>> >>>>> Realmente, para uma área tão grande, me parece melhor usar distâncias >>>>> euclidianas. Calcular as distâncias por vias terrestres entre cada par de >>>>> municípios é uma tarefa que demandaria um trabalho gigantesco, pois não >>>>> existem bases com essas informações (completas). Dependendo do tipo do >>>>> problema em estudo, é uma informação que não faz muito sentido. Eu posso >>>>> ter um trecho de via de 20 km que consigo percorrer em 10 minutos (a 120 >>>>> km/h) e posso ter outro com a mesma extensão, mas com condições ruins de >>>>> pavimentação ou de topografia, na qual levarei muito mais tempo. >>>>> >>>>> Só completando um pouco as opiniões de alguns. >>>>> >>>>> Saudações. >>>>> >>>>> Mário >>>>> >>>>> >>>>> 2011/11/2 Ricardo Tavares <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=0> >>>>> > >>>>> >>>>>> Oi Leandro e demais colegas, >>>>>> >>>>>> A base shape é disponibilizada pelo IBGE no seguinte link: >>>>>> >>>>>> >>>>>> ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/ >>>>>> >>>>>> Um abraço e até mais, >>>>>> Ricardo. >>>>>> >>>>>> Em 1 de novembro de 2011 15:55, Leandro Marino <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=1> >>>>>> > escreveu: >>>>>> >>>>>>> Caros,**** >>>>>>> >>>>>>> ** ** >>>>>>> >>>>>>> Por acaso alguém sabe me dizer se existe em algum local uma tabela / >>>>>>> matriz de distancias entre TODOS os municípios brasileiros?**** >>>>>>> >>>>>>> ** ** >>>>>>> >>>>>>> Estava precisando deste tipo de dado.**** >>>>>>> >>>>>>> ** ** >>>>>>> >>>>>>> Atenciosamente, >>>>>>> *Leandro Lins Marino** >>>>>>> **Centro de Avaliação >>>>>>> Fundação CESGRANRIO >>>>>>> Rua Santa Alexandrina, 1011 - 2º andar >>>>>>> Rio de Janeiro, RJ - CEP: 20261-903 >>>>>>> * >>>>>>> *(** **<a href="tel:%2821%29%202103-9600" value="+552121039600" >>>>>>> target="_blank">(21) 2103-9600 R.:236 >>>>>>> ***** [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=2> >>>>>>> * >>>>>>> >>>>>>> ** ** >>>>>>> >>>>>>> P* **Antes de imprimir* *pense em sua responsabilidade e >>>>>>> compromisso com o* *MEIO AMBIENTE* **** >>>>>>> >>>>>>> ** ** >>>>>>> >>>>>>> Esta mensagem, incluindo seus anexos, pode conter informacoes >>>>>>> privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida >>>>>>> sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa >>>>>>> autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou >>>>>>> arquivamento sao proibidos. **** >>>>>>> >>>>>>> Portanto, se você recebeu esta mensagem por engano, por favor, nos >>>>>>> informe respondendo imediatamente a este e-mail e em seguida apague-a. >>>>>>> **** >>>>>>> >>>>>>> ** ** >>>>>>> >>>>>>> _______________________________________________ >>>>>>> R-br mailing list >>>>>>> [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=3> >>>>>>> >>>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e >>>>>>> forneça código mínimo reproduzível. >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Professor Adjunto - área Estatística >>>>>> Departamento de Matemática >>>>>> Universidade Federal de Ouro Preto >>>>>> >>>>>> _______________________________________________ >>>>>> R-br mailing list >>>>>> [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=4> >>>>>> >>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>>>>> código mínimo reproduzível. >>>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> R-br mailing list >>>>> [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=5> >>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>>>> código mínimo reproduzível. >>>>> >>>>> ------------------------------ >>>>> If you reply to this email, your message will be added to the >>>>> discussion below: >>>>> >>>>> http://r-br.2285057.n4.nabble.com/R-br-OT-Distancias-entre-municipios-tp3964600p3984003.html >>>>> To unsubscribe from R-br, click here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>. >>>>> >>>>> >>>> >>>> >>>> >>>> -- >>>> Saudações, >>>> Pedro Rafael Diniz Marinho. >>>> Estatístico - Secretaria de Estado da Saúde - PB. >>>> >>>> >>>> >>>> _______________________________________________ >>>> R-br mailing list >>>> R-br@listas.c3sl.ufpr.br >>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>>> código mínimo reproduzível. >>>> >>> >>> >> >> _______________________________________________ >> R-br mailing list >> R-br@listas.c3sl.ufpr.br >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >> código mínimo reproduzível. >> > > > _______________________________________________ > R-br mailing list > R-br@listas.c3sl.ufpr.br > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código mínimo reproduzível. >

Paulo, Esse código é tipo um rascunho, acho que não cheguei a testar nem dez vezes. Eu só fiz com base num padrão que eu vi nos html's das poucas páginas que eu acessei. Como o gmaps é cheio de personalizações/frescuras, pode ser que esse código só funcione acessando da minha máquina, do meu IP ou do meu login no google, vai saber... A parte do encoding foi a mais difícil de acertar aqui. Ficou essa gambiarra aí, mas assim foi o único jeito que rodou aqui. Eu testei essa função só em R x64 2.13 (windows7). Você tá mexendo com a 2.13 também? Em 22 de novembro de 2011 18:28, Paulo Nogueira <paulons@gmail.com>escreveu: > Lucas, > provavelmente está tudo funcionando bem aí no seu computador, mas fui > rodar seu código e tive problemas. > > > > #código: > > distancia <- function(cidade1, uf1, cidade2, uf2){ > + link <- paste( "http://maps.google.com/maps?saddr=", cidade1, "+-+", > uf1, ",+Brasil&daddr=", cidade2, "+-+", uf2, ",+Brasil&hl=pt-BR&ie=UTF8", > sep="") > + link <- iconv(link, 'latin1', 'UTF-8') > + Encoding(link) <- 'bytes' > + > + pagina <- readLines(url(link)) > + > + linha <- grep('<div class="altroute-rcol altroute-info"> <span>', pagina) > + distancia <- pagina[linha] > + distancia <- strsplit(distancia, '<div class="altroute-rcol > altroute-info"> <span>')[[1]][2] > + distancia <- strsplit(distancia, '</span>')[[1]][1] > + return(list(distancia = distancia, link=link)) > + } > > > > > distancia("Brasília", "DF", "Pirenópolis", "GO") > Erro em strsplit(distancia, "<div class=\"altroute-rcol altroute-info\"> > <span>")[[1]] : > índice fora de limites > Além disso: Mensagens de aviso perdidas: > 1: In readLines(url(link)) : > linha final incompleta encontrada em ' > http://maps.google.com/maps?saddr=Brasà > lia+-+DF,+Brasil&daddr=Pirenópolis+-+GO,+Brasil&hl=pt-BR&ie=UTF8' > 2: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : > string de entrada 1 é inválida nesse locale > 3: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : > string de entrada 161 é inválida nesse locale > 4: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : > string de entrada 240 é inválida nesse locale > 5: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : > string de entrada 248 é inválida nesse locale > > > > > O erro está na função Enconding, mas não consegui entender muito bem do > que se trata. > Tenho interesse nessa função e gostaria de fazr funcionar aqui. Você tem > alguma luz? > > Obrigado, > Paulo > > > Em 4 de novembro de 2011 12:20, Lucas Barbosa <lucasbcr@gmail.com>escreveu: > > Bom dia pessoal, >> Tá aí uma ideia usando o google maps. Parece estar funcionando bem, mas >> ainda não testei direito. Notem que eu escolhi usar sempre a primeira rota >> que o gmaps sugere (a mais rápida e não a mais curta.) >> Cada execução leva quase 1 s então deve demorar uma eternidade pra todos >> os municípios. E pra piorar eu só consegui rodar essa função usando um >> núcleo, parece não ser possível executar a readLines com mais de um ao >> mesmo tempo (talvez o problema seja com o *snow*.) >> Eu não sei usar muito bem esses *encodings* então não reparem nessa >> parte, foi tentativa e erro mesmo. >> >> #código: >> distancia <- function(cidade1, uf1, cidade2, uf2){ >> link <- paste( "http://maps.google.com/maps?saddr=", cidade1, >> "+-+", uf1, ",+Brasil&daddr=", cidade2, "+-+", uf2, >> ",+Brasil&hl=pt-BR&ie=UTF8", sep="") >> link <- iconv(link, 'latin1', 'UTF-8') >> Encoding(link) <- 'bytes' >> >> pagina <- readLines(url(link)) >> >> linha <- grep('<div class="altroute-rcol altroute-info"> <span>', >> pagina) >> distancia <- pagina[linha] >> distancia <- strsplit(distancia, '<div class="altroute-rcol >> altroute-info"> <span>')[[1]][2] >> distancia <- strsplit(distancia, '</span>')[[1]][1] >> return(list(distancia = distancia, link=link)) >> } >> >> distancia("Brasília", "DF", "Pirenópolis", "GO") >> distancia("Brasília", "DF", "Goiânia", "GO") >> distancia("Brasília", "DF", "Natal", "RN") >> distancia("Brasília", "DF", "Florianópolis", "SC") >> distancia("Brasília", "DF", "Porto Alegre", "RS") >> >> Em 4 de novembro de 2011 00:31, Mario Azevedo <mario.azevedo@gmail.com>escreveu: >> >> A matriz será muito grande 5566 x 5566 = 30980356 elementos. Se cada >>> elemento for um número real, ele consumirá, no mínimo, 4 bytes de memória, >>> totalizando algo perto de 118 Mbytes. Não sei quais são os limites, mas me >>> parece que deve ficar difícil tratar de um "bicho" desse tamanho. >>> >>> sds. >>> >>> >>> 2011/11/3 Mario Azevedo <mario.azevedo@gmail.com> >>> >>>> Sim. O programa irá calcular essa matriz de distâncias e você pode >>>> estabelecer a unidade de medida. >>>> >>>> Lembrando que você deve tomar cuidado porque, talvez, o que lhe >>>> interesse seja o centróide da área da sede do município e não da da área >>>> total. Para alguns municípios a diferença pode ser grande. >>>> >>>> 2011/11/3 Pedro Rafael <pedro.rafael.marinho@gmail.com> >>>> >>>>> Existe alguma forma de converter essa distância euclidiana entre >>>>> centroides de municípios em cm, m, km? >>>>> >>>>> Em 2 de novembro de 2011 22:47, Mario Azevedo [via R-br] < >>>>> ml-node+s2285057n3984003h70@n4.nabble.com> escreveu: >>>>> >>>>>> Realmente, para uma área tão grande, me parece melhor usar distâncias >>>>>> euclidianas. Calcular as distâncias por vias terrestres entre cada par de >>>>>> municípios é uma tarefa que demandaria um trabalho gigantesco, pois não >>>>>> existem bases com essas informações (completas). Dependendo do tipo do >>>>>> problema em estudo, é uma informação que não faz muito sentido. Eu posso >>>>>> ter um trecho de via de 20 km que consigo percorrer em 10 minutos (a 120 >>>>>> km/h) e posso ter outro com a mesma extensão, mas com condições ruins de >>>>>> pavimentação ou de topografia, na qual levarei muito mais tempo. >>>>>> >>>>>> Só completando um pouco as opiniões de alguns. >>>>>> >>>>>> Saudações. >>>>>> >>>>>> Mário >>>>>> >>>>>> >>>>>> 2011/11/2 Ricardo Tavares <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=0> >>>>>> > >>>>>> >>>>>>> Oi Leandro e demais colegas, >>>>>>> >>>>>>> A base shape é disponibilizada pelo IBGE no seguinte link: >>>>>>> >>>>>>> >>>>>>> ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/ >>>>>>> >>>>>>> Um abraço e até mais, >>>>>>> Ricardo. >>>>>>> >>>>>>> Em 1 de novembro de 2011 15:55, Leandro Marino <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=1> >>>>>>> > escreveu: >>>>>>> >>>>>>>> Caros,**** >>>>>>>> >>>>>>>> ** ** >>>>>>>> >>>>>>>> Por acaso alguém sabe me dizer se existe em algum local uma tabela >>>>>>>> / matriz de distancias entre TODOS os municípios brasileiros?**** >>>>>>>> >>>>>>>> ** ** >>>>>>>> >>>>>>>> Estava precisando deste tipo de dado.**** >>>>>>>> >>>>>>>> ** ** >>>>>>>> >>>>>>>> Atenciosamente, >>>>>>>> *Leandro Lins Marino** >>>>>>>> **Centro de Avaliação >>>>>>>> Fundação CESGRANRIO >>>>>>>> Rua Santa Alexandrina, 1011 - 2º andar >>>>>>>> Rio de Janeiro, RJ - CEP: 20261-903 >>>>>>>> * >>>>>>>> *(** **<a href="tel:%2821%29%202103-9600" value="+552121039600" >>>>>>>> target="_blank">(21) 2103-9600 R.:236 >>>>>>>> ***** [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=2> >>>>>>>> * >>>>>>>> >>>>>>>> ** ** >>>>>>>> >>>>>>>> P* **Antes de imprimir* *pense em sua responsabilidade e >>>>>>>> compromisso com o* *MEIO AMBIENTE* **** >>>>>>>> >>>>>>>> ** ** >>>>>>>> >>>>>>>> Esta mensagem, incluindo seus anexos, pode conter informacoes >>>>>>>> privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida >>>>>>>> sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa >>>>>>>> autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou >>>>>>>> arquivamento sao proibidos. **** >>>>>>>> >>>>>>>> Portanto, se você recebeu esta mensagem por engano, por favor, nos >>>>>>>> informe respondendo imediatamente a este e-mail e em seguida apague-a. >>>>>>>> **** >>>>>>>> >>>>>>>> ** ** >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> R-br mailing list >>>>>>>> [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=3> >>>>>>>> >>>>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e >>>>>>>> forneça código mínimo reproduzível. >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Professor Adjunto - área Estatística >>>>>>> Departamento de Matemática >>>>>>> Universidade Federal de Ouro Preto >>>>>>> >>>>>>> _______________________________________________ >>>>>>> R-br mailing list >>>>>>> [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=4> >>>>>>> >>>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e >>>>>>> forneça código mínimo reproduzível. >>>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> R-br mailing list >>>>>> [hidden email] <http://user/SendEmail.jtp?type=node&node=3984003&i=5> >>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>>>>> código mínimo reproduzível. >>>>>> >>>>>> ------------------------------ >>>>>> If you reply to this email, your message will be added to the >>>>>> discussion below: >>>>>> >>>>>> http://r-br.2285057.n4.nabble.com/R-br-OT-Distancias-entre-municipios-tp3964600p3984003.html >>>>>> To unsubscribe from R-br, click here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>. >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Saudações, >>>>> Pedro Rafael Diniz Marinho. >>>>> Estatístico - Secretaria de Estado da Saúde - PB. >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> R-br mailing list >>>>> R-br@listas.c3sl.ufpr.br >>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>>>> código mínimo reproduzível. >>>>> >>>> >>>> >>> >>> _______________________________________________ >>> R-br mailing list >>> R-br@listas.c3sl.ufpr.br >>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>> código mínimo reproduzível. >>> >> >> >> _______________________________________________ >> R-br mailing list >> R-br@listas.c3sl.ufpr.br >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >> código mínimo reproduzível. >> > > > _______________________________________________ > R-br mailing list > R-br@listas.c3sl.ufpr.br > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código mínimo reproduzível. >

Oi Lucas, estou utilizando o R 2.14 no Ubuntu 10.4. Ainda não pude mexer na função, mas se eu conseguir fazer funcionar mando aqui para a lista quais foram as modificações. Obrigado. PNS Em 23 de novembro de 2011 21:16, Lucas Barbosa <lucasbcr@gmail.com>escreveu: > Paulo, > Esse código é tipo um rascunho, acho que não cheguei a testar nem dez > vezes. Eu só fiz com base num padrão que eu vi nos html's das poucas > páginas que eu acessei. Como o gmaps é cheio de personalizações/frescuras, > pode ser que esse código só funcione acessando da minha máquina, do meu IP > ou do meu login no google, vai saber... > A parte do encoding foi a mais difícil de acertar aqui. Ficou essa > gambiarra aí, mas assim foi o único jeito que rodou aqui. > Eu testei essa função só em R x64 2.13 (windows7). Você tá mexendo com a > 2.13 também? > > Em 22 de novembro de 2011 18:28, Paulo Nogueira <paulons@gmail.com>escreveu: > > Lucas, >> provavelmente está tudo funcionando bem aí no seu computador, mas fui >> rodar seu código e tive problemas. >> >> >> > #código: >> > distancia <- function(cidade1, uf1, cidade2, uf2){ >> + link <- paste( "http://maps.google.com/maps?saddr=", cidade1, "+-+", >> uf1, ",+Brasil&daddr=", cidade2, "+-+", uf2, ",+Brasil&hl=pt-BR&ie=UTF8", >> sep="") >> + link <- iconv(link, 'latin1', 'UTF-8') >> + Encoding(link) <- 'bytes' >> + >> + pagina <- readLines(url(link)) >> + >> + linha <- grep('<div class="altroute-rcol altroute-info"> <span>', >> pagina) >> + distancia <- pagina[linha] >> + distancia <- strsplit(distancia, '<div class="altroute-rcol >> altroute-info"> <span>')[[1]][2] >> + distancia <- strsplit(distancia, '</span>')[[1]][1] >> + return(list(distancia = distancia, link=link)) >> + } >> >> > >> > distancia("Brasília", "DF", "Pirenópolis", "GO") >> Erro em strsplit(distancia, "<div class=\"altroute-rcol altroute-info\"> >> <span>")[[1]] : >> índice fora de limites >> Além disso: Mensagens de aviso perdidas: >> 1: In readLines(url(link)) : >> linha final incompleta encontrada em ' >> http://maps.google.com/maps?saddr=Brasà >> lia+-+DF,+Brasil&daddr=Pirenópolis+-+GO,+Brasil&hl=pt-BR&ie=UTF8' >> 2: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : >> string de entrada 1 é inválida nesse locale >> 3: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : >> string de entrada 161 é inválida nesse locale >> 4: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : >> string de entrada 240 é inválida nesse locale >> 5: In grep("<div class=\"altroute-rcol altroute-info\"> <span>", pagina) : >> string de entrada 248 é inválida nesse locale >> >> > >> >> O erro está na função Enconding, mas não consegui entender muito bem do >> que se trata. >> Tenho interesse nessa função e gostaria de fazr funcionar aqui. Você tem >> alguma luz? >> >> Obrigado, >> Paulo >> >> >> Em 4 de novembro de 2011 12:20, Lucas Barbosa <lucasbcr@gmail.com>escreveu: >> >> Bom dia pessoal, >>> Tá aí uma ideia usando o google maps. Parece estar funcionando bem, mas >>> ainda não testei direito. Notem que eu escolhi usar sempre a primeira rota >>> que o gmaps sugere (a mais rápida e não a mais curta.) >>> Cada execução leva quase 1 s então deve demorar uma eternidade pra todos >>> os municípios. E pra piorar eu só consegui rodar essa função usando um >>> núcleo, parece não ser possível executar a readLines com mais de um ao >>> mesmo tempo (talvez o problema seja com o *snow*.) >>> Eu não sei usar muito bem esses *encodings* então não reparem nessa >>> parte, foi tentativa e erro mesmo. >>> >>> #código: >>> distancia <- function(cidade1, uf1, cidade2, uf2){ >>> link <- paste( "http://maps.google.com/maps?saddr=", cidade1, >>> "+-+", uf1, ",+Brasil&daddr=", cidade2, "+-+", uf2, >>> ",+Brasil&hl=pt-BR&ie=UTF8", sep="") >>> link <- iconv(link, 'latin1', 'UTF-8') >>> Encoding(link) <- 'bytes' >>> >>> pagina <- readLines(url(link)) >>> >>> linha <- grep('<div class="altroute-rcol altroute-info"> <span>', >>> pagina) >>> distancia <- pagina[linha] >>> distancia <- strsplit(distancia, '<div class="altroute-rcol >>> altroute-info"> <span>')[[1]][2] >>> distancia <- strsplit(distancia, '</span>')[[1]][1] >>> return(list(distancia = distancia, link=link)) >>> } >>> >>> distancia("Brasília", "DF", "Pirenópolis", "GO") >>> distancia("Brasília", "DF", "Goiânia", "GO") >>> distancia("Brasília", "DF", "Natal", "RN") >>> distancia("Brasília", "DF", "Florianópolis", "SC") >>> distancia("Brasília", "DF", "Porto Alegre", "RS") >>> >>> Em 4 de novembro de 2011 00:31, Mario Azevedo <mario.azevedo@gmail.com>escreveu: >>> >>> A matriz será muito grande 5566 x 5566 = 30980356 elementos. Se cada >>>> elemento for um número real, ele consumirá, no mínimo, 4 bytes de memória, >>>> totalizando algo perto de 118 Mbytes. Não sei quais são os limites, mas me >>>> parece que deve ficar difícil tratar de um "bicho" desse tamanho. >>>> >>>> sds. >>>> >>>> >>>> 2011/11/3 Mario Azevedo <mario.azevedo@gmail.com> >>>> >>>>> Sim. O programa irá calcular essa matriz de distâncias e você pode >>>>> estabelecer a unidade de medida. >>>>> >>>>> Lembrando que você deve tomar cuidado porque, talvez, o que lhe >>>>> interesse seja o centróide da área da sede do município e não da da área >>>>> total. Para alguns municípios a diferença pode ser grande. >>>>> >>>>> 2011/11/3 Pedro Rafael <pedro.rafael.marinho@gmail.com> >>>>> >>>>>> Existe alguma forma de converter essa distância euclidiana entre >>>>>> centroides de municípios em cm, m, km? >>>>>> >>>>>> Em 2 de novembro de 2011 22:47, Mario Azevedo [via R-br] < >>>>>> ml-node+s2285057n3984003h70@n4.nabble.com> escreveu: >>>>>> >>>>>>> Realmente, para uma área tão grande, me parece melhor usar >>>>>>> distâncias euclidianas. Calcular as distâncias por vias terrestres entre >>>>>>> cada par de municípios é uma tarefa que demandaria um trabalho gigantesco, >>>>>>> pois não existem bases com essas informações (completas). Dependendo do >>>>>>> tipo do problema em estudo, é uma informação que não faz muito sentido. Eu >>>>>>> posso ter um trecho de via de 20 km que consigo percorrer em 10 minutos (a >>>>>>> 120 km/h) e posso ter outro com a mesma extensão, mas com condições ruins >>>>>>> de pavimentação ou de topografia, na qual levarei muito mais tempo. >>>>>>> >>>>>>> Só completando um pouco as opiniões de alguns. >>>>>>> >>>>>>> Saudações. >>>>>>> >>>>>>> Mário >>>>>>> >>>>>>> >>>>>>> 2011/11/2 Ricardo Tavares <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=0> >>>>>>> > >>>>>>> >>>>>>>> Oi Leandro e demais colegas, >>>>>>>> >>>>>>>> A base shape é disponibilizada pelo IBGE no seguinte link: >>>>>>>> >>>>>>>> >>>>>>>> ftp://geoftp.ibge.gov.br/mapas/malhas_digitais/municipio_2007/Malha_Municipal_Digital_2007_2500/Disseminacao_2007/Proj_Geografica/SIRGAS2000/ArcView_Shp/2007/E2500/Brasil/ >>>>>>>> >>>>>>>> Um abraço e até mais, >>>>>>>> Ricardo. >>>>>>>> >>>>>>>> Em 1 de novembro de 2011 15:55, Leandro Marino <[hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=1> >>>>>>>> > escreveu: >>>>>>>> >>>>>>>>> Caros,**** >>>>>>>>> >>>>>>>>> ** ** >>>>>>>>> >>>>>>>>> Por acaso alguém sabe me dizer se existe em algum local uma tabela >>>>>>>>> / matriz de distancias entre TODOS os municípios brasileiros?**** >>>>>>>>> >>>>>>>>> ** ** >>>>>>>>> >>>>>>>>> Estava precisando deste tipo de dado.**** >>>>>>>>> >>>>>>>>> ** ** >>>>>>>>> >>>>>>>>> Atenciosamente, >>>>>>>>> *Leandro Lins Marino** >>>>>>>>> **Centro de Avaliação >>>>>>>>> Fundação CESGRANRIO >>>>>>>>> Rua Santa Alexandrina, 1011 - 2º andar >>>>>>>>> Rio de Janeiro, RJ - CEP: 20261-903 >>>>>>>>> * >>>>>>>>> *(** **<a href="tel:%2821%29%202103-9600" value="+552121039600" >>>>>>>>> target="_blank">(21) 2103-9600 R.:236 >>>>>>>>> ***** [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=2> >>>>>>>>> * >>>>>>>>> >>>>>>>>> ** ** >>>>>>>>> >>>>>>>>> P* **Antes de imprimir* *pense em sua responsabilidade e >>>>>>>>> compromisso com o* *MEIO AMBIENTE* **** >>>>>>>>> >>>>>>>>> ** ** >>>>>>>>> >>>>>>>>> Esta mensagem, incluindo seus anexos, pode conter informacoes >>>>>>>>> privilegiadas e/ou de carater confidencial, nao podendo ser retransmitida >>>>>>>>> sem autorizacao do remetente. Se voce nao e o destinatario ou pessoa >>>>>>>>> autorizada a recebe-la, informamos que o seu uso, divulgacao, copia ou >>>>>>>>> arquivamento sao proibidos. **** >>>>>>>>> >>>>>>>>> Portanto, se você recebeu esta mensagem por engano, por favor, nos >>>>>>>>> informe respondendo imediatamente a este e-mail e em seguida apague-a. >>>>>>>>> **** >>>>>>>>> >>>>>>>>> ** ** >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> R-br mailing list >>>>>>>>> [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=3> >>>>>>>>> >>>>>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e >>>>>>>>> forneça código mínimo reproduzível. >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Professor Adjunto - área Estatística >>>>>>>> Departamento de Matemática >>>>>>>> Universidade Federal de Ouro Preto >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> R-br mailing list >>>>>>>> [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=4> >>>>>>>> >>>>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e >>>>>>>> forneça código mínimo reproduzível. >>>>>>>> >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> R-br mailing list >>>>>>> [hidden email]<http://user/SendEmail.jtp?type=node&node=3984003&i=5> >>>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e >>>>>>> forneça código mínimo reproduzível. >>>>>>> >>>>>>> ------------------------------ >>>>>>> If you reply to this email, your message will be added to the >>>>>>> discussion below: >>>>>>> >>>>>>> http://r-br.2285057.n4.nabble.com/R-br-OT-Distancias-entre-municipios-tp3964600p3984003.html >>>>>>> To unsubscribe from R-br, click here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=cGVkcm8ucmFmYWVsLm1hcmluaG9AZ21haWwuY29tfDMzNTc5ODJ8NTAyMjI0MDYw>. >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Saudações, >>>>>> Pedro Rafael Diniz Marinho. >>>>>> Estatístico - Secretaria de Estado da Saúde - PB. >>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> R-br mailing list >>>>>> R-br@listas.c3sl.ufpr.br >>>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>>>>> código mínimo reproduzível. >>>>>> >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> R-br mailing list >>>> R-br@listas.c3sl.ufpr.br >>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>>> código mínimo reproduzível. >>>> >>> >>> >>> _______________________________________________ >>> R-br mailing list >>> R-br@listas.c3sl.ufpr.br >>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>> código mínimo reproduzível. >>> >> >> >> _______________________________________________ >> R-br mailing list >> R-br@listas.c3sl.ufpr.br >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >> código mínimo reproduzível. >> > > > _______________________________________________ > R-br mailing list > R-br@listas.c3sl.ufpr.br > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código mínimo reproduzível. >

Em 3/11/2011 23:31, Mario Azevedo escreveu:
A matriz será muito grande 5566 x 5566 = 30980356 elementos. Se cada elemento for um número real, ele consumirá, no mínimo, 4 bytes de memória, totalizando algo perto de 118 Mbytes. Não sei quais são os limites, mas me parece que deve ficar difícil tratar de um "bicho" desse tamanho.
Mario, A matriz só teria esse tamanho se você considerar três coisas: 1) Que as distâncias de cada cidade à ela mesma é diferente de zero; 2) que as distâncias são arcos orientados; e 3) em cada sentido desses arcos as distâncias podem ser diferentes. caso você levante essas restrições o número real de distâncias seria aquele que já postei anteriormente. Deixo como exercício como armazenar os dados sem precisar de uma matriz para os dados redundantes :-) -- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/

Oi Cesar, Eu sei disso. Não deixei claro, mas estava pensando na parte do processamento da matriz. Seria, talvez, um quarto item na sua lista. Nem sempre o programa aceita ou a pessoa sabe programar para "eliminar" (evitar que o computador reserve espaço de memória) para uma matriz da qual só lhe interessam poucas células, neste caso, só uma das partes triangulares sem a diagonal. Posso ilustrar um pouco mais a importância dessa questão? Este problema, que simplificamos (distâncias euclidianas), fica maior quando consideramos que não existem ligações diretas (estradas) entre todos os pares de cidades. Aí o armazenamento dessa matriz cheia de zeros demanda cuidado, principalmente se for muito grande. Pode, também, não ser simétrica. No ambiente urbano, por exemplo, nem sempre a "distância" de i para j é a mesma de j para i. Na minha área de trabalho (planejamento de transportes), algumas vezes a diagonal principal pode estar preenchida com valores diferentes de zero, se eu considerar a extensão média das viagens. Os nós da minha rede representam centróides de zonas (setores censitários do IBGE, por exemplo) e ocorrem viagens dentro das zonas. Acima, coloquei distância entre aspas porque no meu caso, que trabalho com transportes, ela pode não ser representada pela extensão em km e sim pelo tempo em minutos, ou alguma misturas destes dois e/ou outros. A "distância" é expressada por um custo para percorrer determinado trecho da rede. Espero ter esclarecido. Obrigado por corrigir a confusão que a minha mensagem possa ter causado. Bom final de semana para todos. Mário 2011/11/4 Cesar Rabak <cesar.rabak@gmail.com>
Em 3/11/2011 23:31, Mario Azevedo escreveu:
A matriz será muito grande 5566 x 5566 = 30980356 elementos. Se cada
elemento for um número real, ele consumirá, no mínimo, 4 bytes de memória, totalizando algo perto de 118 Mbytes. Não sei quais são os limites, mas me parece que deve ficar difícil tratar de um "bicho" desse tamanho.
Mario,
A matriz só teria esse tamanho se você considerar três coisas:
1) Que as distâncias de cada cidade à ela mesma é diferente de zero; 2) que as distâncias são arcos orientados; e 3) em cada sentido desses arcos as distâncias podem ser diferentes.
caso você levante essas restrições o número real de distâncias seria aquele que já postei anteriormente.
Deixo como exercício como armazenar os dados sem precisar de uma matriz para os dados redundantes :-)
-- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/ ______________________________**_________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/**cgi-bin/mailman/listinfo/r-br<https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-**guia<http://www.leg.ufpr.br/r-br-guia>) e forneça código mínimo reproduzível.

Em 5/11/2011 12:44, Mario Azevedo escreveu:
Oi Cesar,
Eu sei disso. Não deixei claro, mas estava pensando na parte do processamento da matriz. Seria, talvez, um quarto item na sua lista. Nem sempre o programa aceita ou a pessoa sabe programar para "eliminar" (evitar que o computador reserve espaço de memória) para uma matriz da qual só lhe interessam poucas células, neste caso, só uma das partes triangulares sem a diagonal.
Sim. Esse é um tipo de conhecimento mais específico.
Posso ilustrar um pouco mais a importância dessa questão? Este problema, que simplificamos (distâncias euclidianas), fica maior quando consideramos que não existem ligações diretas (estradas) entre todos os pares de cidades.
Corretíssimo. Aliás isso enseja uma discussão entre as assim chamadas (pelo menos assim era quando estudei isso) distâncias geográficas versus distâncias geométricas.
Aí o armazenamento dessa matriz cheia de zeros demanda cuidado, principalmente se for muito grande.
Na verdade para essa matriz (ou objeto de armazenagem apropriado) ser usável do ponto de vista matemático, nos pares de pontos (cidades) que não haja caminho direto você precisaria colocar ou algo entendível pelo R como +Inf ou um código especial para sinalizar esse caso. Armazenar _zeros_ nessas posições seria um erro crasso (posso escrever ex-cátedra).
Pode, também, não ser simétrica. No ambiente urbano, por exemplo, nem sempre a "distância" de i para j é a mesma de j para i.
Esse caso está coberto na minha discussão, mas imagino que para distâncias entre cidades esse problema não seja tão influente (embora reconheço que para conexão entre certas cidades às vezes é necessário passar "por dentro de alguma outra".
Na minha área de trabalho (planejamento de transportes), algumas vezes a diagonal principal pode estar preenchida com valores diferentes de zero, se eu considerar a extensão média das viagens. Os nós da minha rede representam centróides de zonas (setores censitários do IBGE, por exemplo) e ocorrem viagens dentro das zonas.
Não entendi bem o quê você quer dizer com "extensão média de viagens". SE a granularidade da sua matriz for uma subdivisão de um município, obviamente é a distância entre essas subunidades que se deve discutir, senão entramos em inconsistências tanto lógicas como matemáticas.
Acima, coloquei distância entre aspas porque no meu caso, que trabalho com transportes, ela pode não ser representada pela extensão em km e sim pelo tempo em minutos, ou alguma misturas destes dois e/ou outros. A "distância" é expressada por um custo para percorrer determinado trecho da rede.
OK. Eu tenho bastante experiência com esse conceito¹!
Espero ter esclarecido. Obrigado por corrigir a confusão que a minha mensagem possa ter causado.
Esclarecendo, vamos ajudando o OP a encontrar uma solução para um problema que deve ser não só dele como de muita gente > []s -- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/ [1] http://www.teses.usp.br/teses/disponiveis/3/3141/tde-24062005-190210/

Caros, a discussão está cada vez mais interessante. Junto a tudo o que foi falado descobri uma API do google que pode facilitar. Ainda não desenvolvi nada a respeito, acredito que no próximo feriado consiga avançar nesta questão. A sugestão do nosso colega Lucas me pareceu interessante. Mas me parece que se juntarmos com http://code.google.com/intl/pt-BR/apis/maps/documentation/directions/ pode ser bem interessante. Realmente em se tratando de distancias entre cidades em pouquíssimos casos acredito que a distancia de i para j seja maior (ou menor) que de j para i, significativamente. Pode-se considerar uma margem de 5% ou 10% de distancia para incorporar isto. É claro que muitas vezes essas distancias se alteram em virtude de quedas de barreiras ou construção de novos caminhos. Quando levantei este tópico estava realmente pensando nas distâncias entre as cidades considerando os caminhos possíveis de serem executados por transportes aqua-rodo-ferroviários. Assim que conseguir uma forma de extrair essas distâncias de forma gratuita, irei disponibilizar a todos. Visto que acredito que muitos podem e poderão ter interesse neste dado. Pretendo fazer um banco de dados com essas distancias, não uma matriz quadrada, pois, para facilitar consultar futuras irei armazenar as cidades com os seus respectivos códigos fornecidos pelo IBGE. Atenciosamente, Leandro Marino http://www.leandromarino.com.br (Fotógrafo) http://est.leandromarino.com.br/Blog (Estatístico) Cel.: + 55 21 9845-7707 Cel.: + 55 21 8777-7907 Em 5 de novembro de 2011 16:06, Cesar Rabak <cesar.rabak@gmail.com> escreveu:
so está coberto na minha discussão, mas imagino que para distâncias entre cidades esse problema não seja tão influente (embora reconheço que para conexão entre certas cidades às vezes é necessário passar "por dentro de alguma outra"

Muito interessante essa API, Leandro. Não sei muito de xml, mas vou ver se com issa API o tempo de processamento do script diminui. Acabei de achar um problema. Parece que só é possível fazer 2.500 solicitações por dia de graça ou 100.000 pra clientes. Mesmo com o pago, seriam necessários mais de 300 dias para obter todas as distâncias. Em 5 de novembro de 2011 17:01, Leandro Marino < leandromarino@leandromarino.com.br> escreveu:
Caros,
a discussão está cada vez mais interessante. Junto a tudo o que foi falado descobri uma API do google que pode facilitar. Ainda não desenvolvi nada a respeito, acredito que no próximo feriado consiga avançar nesta questão.
A sugestão do nosso colega Lucas me pareceu interessante. Mas me parece que se juntarmos com http://code.google.com/intl/pt-BR/apis/maps/documentation/directions/ pode ser bem interessante.
Realmente em se tratando de distancias entre cidades em pouquíssimos casos acredito que a distancia de i para j seja maior (ou menor) que de j para i, significativamente. Pode-se considerar uma margem de 5% ou 10% de distancia para incorporar isto. É claro que muitas vezes essas distancias se alteram em virtude de quedas de barreiras ou construção de novos caminhos.
Quando levantei este tópico estava realmente pensando nas distâncias entre as cidades considerando os caminhos possíveis de serem executados por transportes aqua-rodo-ferroviários.
Assim que conseguir uma forma de extrair essas distâncias de forma gratuita, irei disponibilizar a todos. Visto que acredito que muitos podem e poderão ter interesse neste dado. Pretendo fazer um banco de dados com essas distancias, não uma matriz quadrada, pois, para facilitar consultar futuras irei armazenar as cidades com os seus respectivos códigos fornecidos pelo IBGE.
Atenciosamente, Leandro Marino http://www.leandromarino.com.br (Fotógrafo) http://est.leandromarino.com.br/Blog (Estatístico) Cel.: + 55 21 9845-7707 Cel.: + 55 21 8777-7907
Em 5 de novembro de 2011 16:06, Cesar Rabak <cesar.rabak@gmail.com> escreveu:
so está coberto na minha discussão, mas imagino que para distâncias entre cidades esse problema não seja tão influente (embora reconheço que para conexão entre certas cidades às vezes é necessário passar "por dentro de alguma outra"
R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Lucas, mais ou menos... note que não preciso calcular a matriz completa e sim apenas a diagonal superior. Ainda assim demanda meio ano... Mas é uma possível solução. Não sei se conseguir ter acesso a malha aqua-rodo-ferroviária é possível calcular as distâncias usando o menor caminho via software. Alguém que lide com geoprocessamento sabe se isto é possível de ser implementado? Um abraço, Leandro. Atenciosamente, Leandro Marino http://www.leandromarino.com.br (Fotógrafo) http://est.leandromarino.com.br/Blog (Estatístico) Cel.: + 55 21 9845-7707 Cel.: + 55 21 8777-7907 Em 8 de novembro de 2011 09:46, Lucas Barbosa <lucasbcr@gmail.com> escreveu:
uito interessante essa API, Leandro. Não sei muito de xml, mas vou ver se com issa API o tempo de processamento do script diminui. Acabei de achar um problema. Parece que só é possível fazer 2.500 solicitações por dia de graça ou 100.000 pra clientes. Mesmo com o pago, seriam necessários mais de 300 dias para obter todas as distâncias.

Legal a discussão. Desculpem mais uma vez. Para o tipo de matriz em foco, eu não posso colocar zeros quando não existem as ligações. Matriz errada novamente. Estava pensando na matriz de incidência, cujas células são preenchidas com 1, caso exista a ligação, e 0 quando não existe. Esta seria a representação da rede. Para o cálculo, normalmente coloca-se as distâncias reais, quando existe a ligação direta, e um número muito grande (99999, por exemplo, para representar o infinito) quando ela não existe. Isso, é claro, vai depender da estrutura de dados e dos algoritmos utilizados. O exemplo que citei sobre valores diferentes de zero na diagonal, foi um pouco fora do objetivo da discussão, mas serve para adicionar um outro ponto que pode ser tratado com o uso de uma matriz. Geometricamente não faz sentido, mas logicamente, porque não? Seriam atividades que ocorrem no nó da rede. Eu posso trabalhar com áreas (bairros de uma cidade, por exemplo) que são representadas, para efeitos de montar a rede, por pontos localizados nos seus centros geométricos (centróides). Eu tenho viagens que ocorrem entre áreas, que simplifico nas ligações entre centróides, e viagens que ocorrem dentro da área, que posso armazenar na diagonal da matriz. Esse arranjo não é comum, mas não me parece incorreto. Bom, mas isso foge do objetivo da conversa. Se o objetivo é ter um banco de dados com todas as distâncias, acho que pode-se montar uma rede e armazenar as informações dos pares para os quais existam ligações diretas. Posteriormente, pode-se usar um algoritmo de caminhos mínimos para encontrar a menor distância e a rota (cidades por onde passa) entre essas cidades. Nunca trabalhei com uma rede tão grande para esse tipo de aplicação, mas acredito que a resposta saia em segundos ou frações. Não sei qual é o objetivo do Leandro ao montar essa matriz, mas essa "brincadeira" pode ficar interessante. Você pode acrescentar links com diferentes modos de transportes. Se for para transportar pessoas, pode-se usar automóveis, ônibus, trens, barcos, aviões, ... São distâncias (km) diferentes, custos (R$) diferentes, tempos (horas) diferentes. Na hora de gerar a solução do "menor caminho" pode-se escolher o mais curto, o mais barato ou o mais rápido. É algo que o Google Maps e serviços similares fazem. Infelizmente, ainda não usei o R para esse tipo de aplicação. Por isso, posso estar "chovendo no molhado" na opinião de alguns de vocês. Algumas vezes cubro tópicos já presentes em mensagens anteriores. É só para dar uma certa continuidade ao texto. Abs. Mário 2011/11/5 Cesar Rabak <cesar.rabak@gmail.com>
Em 5/11/2011 12:44, Mario Azevedo escreveu:
Oi Cesar,
Eu sei disso. Não deixei claro, mas estava pensando na parte do processamento da matriz. Seria, talvez, um quarto item na sua lista. Nem sempre o programa aceita ou a pessoa sabe programar para "eliminar" (evitar que o computador reserve espaço de memória) para uma matriz da qual só lhe interessam poucas células, neste caso, só uma das partes triangulares sem a diagonal.
Sim. Esse é um tipo de conhecimento mais específico.
Posso ilustrar um pouco mais a importância dessa questão? Este
problema, que simplificamos (distâncias euclidianas), fica maior quando consideramos que não existem ligações diretas (estradas) entre todos os pares de cidades.
Corretíssimo. Aliás isso enseja uma discussão entre as assim chamadas (pelo menos assim era quando estudei isso) distâncias geográficas versus distâncias geométricas.
Aí o armazenamento dessa matriz cheia de zeros demanda cuidado,
principalmente se for muito grande.
Na verdade para essa matriz (ou objeto de armazenagem apropriado) ser usável do ponto de vista matemático, nos pares de pontos (cidades) que não haja caminho direto você precisaria colocar ou algo entendível pelo R como +Inf ou um código especial para sinalizar esse caso. Armazenar _zeros_ nessas posições seria um erro crasso (posso escrever ex-cátedra).
Pode, também, não ser simétrica. No ambiente urbano, por exemplo, nem
sempre a "distância" de i para j é a mesma de j para i.
Esse caso está coberto na minha discussão, mas imagino que para distâncias entre cidades esse problema não seja tão influente (embora reconheço que para conexão entre certas cidades às vezes é necessário passar "por dentro de alguma outra".
Na minha área de trabalho (planejamento de transportes), algumas vezes a diagonal principal pode estar preenchida com valores diferentes de zero, se eu considerar a extensão média das viagens. Os nós da minha rede representam centróides de zonas (setores censitários do IBGE, por exemplo) e ocorrem viagens dentro das zonas.
Não entendi bem o quê você quer dizer com "extensão média de viagens". SE a granularidade da sua matriz for uma subdivisão de um município, obviamente é a distância entre essas subunidades que se deve discutir, senão entramos em inconsistências tanto lógicas como matemáticas.
Acima, coloquei distância entre aspas porque no meu caso, que trabalho com transportes, ela pode não ser representada pela extensão em km e sim pelo tempo em minutos, ou alguma misturas destes dois e/ou outros. A "distância" é expressada por um custo para percorrer determinado trecho da rede.
OK. Eu tenho bastante experiência com esse conceito¹!
Espero ter esclarecido. Obrigado por corrigir a confusão que a minha mensagem possa ter causado.
Esclarecendo, vamos ajudando o OP a encontrar uma solução para um problema que deve ser não só dele como de muita gente >
[]s
-- Cesar Rabak GNU/Linux User 52247. Get counted: http://counter.li.org/
[1] http://www.teses.usp.br/teses/**disponiveis/3/3141/tde-** 24062005-190210/<http://www.teses.usp.br/teses/disponiveis/3/3141/tde-24062005-190210/>
______________________________**_________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/**cgi-bin/mailman/listinfo/r-br<https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-**guia<http://www.leg.ufpr.br/r-br-guia>) e forneça código mínimo reproduzível.
participantes (11)
-
Cesar Rabak
-
Leandro Marino
-
Leandro Marino
-
Leonard de Assis
-
Lucas Barbosa
-
Marcio Nicolau
-
Mario Azevedo
-
Paulo Nogueira
-
Pedro Rafael
-
Ricardo Tavares
-
Walmes Zeviani