Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro na conversão

Depois de fazer a conversão do crs tanto de rj quanto de geodados para

'+proj=utm +zone=23 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=km +no_defs'

e salvar em arquivo, ao abrir novamente e observar o atributo .crs obtenho

{'proj': 'tmerc',
 'lat_0': 0,
 'lon_0': -45,
 'k': 0.9996,
 'x_0': 500000,
 'y_0': 10000000,
 'ellps': 'GRS80',
 'units': 'km',
 'no_defs': True}

diferentemente do professor eu tenho uma 'proj' do tipo tmerc e não UTC. Isso pode causar algum problema?

2 respostas

No arquivo do Rio de Janeiro esse problema não deveria ter acontecido.

Tente repetir o procedimento do:

rj = rj.to_crs('+proj=utm +zone=23 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=km +no_defs')
rj.to_file('RJ-MUNIC.shp')
rj_munic = gpd.read_file('RJ-MUNIC.shp')
rj.crs

No caso do geo_dados isso vai acontecer porque dada a característica diferente do dado o geopandas não consegue determinar os parâmetros do crs corretamente na hora de ler. Entretanto, repare que a coluna geometry está modificada. Ela está em coordenadas UTM agora. Isso é o que você precisa para seguir em frente.

solução!

Na verdade Allan, a nova versão do geopandas faz essa transformação automaticamente e na verdade

'+proj=utm +zone=23 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=km +no_defs'

é igual a:

{'proj': 'tmerc',
 'lat_0': 0,
 'lon_0': -45,
 'k': 0.9996,
 'x_0': 500000,
 'y_0': 10000000,
 'ellps': 'GRS80',
 'units': 'km',
 'no_defs': True}

Eu consegui seguir o curso usando o .crs acima e obtive exatamente as mesmas respostas (com todas as casas decimais).

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software