Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pregunta sobre el ejercicio GeoPandas #8

Open
Cotsikayala opened this issue Mar 9, 2023 · 1 comment
Open

Pregunta sobre el ejercicio GeoPandas #8

Cotsikayala opened this issue Mar 9, 2023 · 1 comment

Comments

@Cotsikayala
Copy link

Hola! @emiliom
Una pregunta respecto al tutorial : Datos espaciales / datos_vectores_geopandas.ipynb

Estoy intentado hacer el mismo programa pero, para 6 polígonos grandes, las coordenadas X,Y de cada polígono están guardadas en archivos .csv por separado,
Pero no he encontrado cual es la respuesta correcta para convertir los polígonos en geometrias y añadirles columnas de atributos, como en el ejemplo del ejercicio "World_Seas.shp".

ejemplo del código erroneo:

from shapely.geometry import Point, Polygon
import pandas as pd
import geopandas as gpd
from geopandas import GeoSeries, GeoDataFrame

Mapa5 = pd.read_csv('/Users/cotsi/Desktop/Prueba/NorteBLP.csv', header=0)
Mapa4 = pd.read_csv('/Users/cotsi/Desktop/Prueba/SanJuan.csv', header=0)

datos = {
'Zona': ['NorteBLP', 'SanJuan'],
'lat': ['NorteBLP.X', 'SanJuan.X'],
'lon': ['NorteBLP.Y', 'SanJuan.Y']
}
geometria = gpd.points_from_xy(datos['lon'], ['lat'])
gs = Geoseries(geometria, index=datos['Zona'])
gs

Saludos, gracias!!!!!

@emiliom
Copy link
Member

emiliom commented Mar 10, 2023

Hola @Cotsikayala. Trataré de ayudarte, pero tenemos que comenzar con los primeros pasos. En primer lugar, podrías compartir uno de esos archivos csv para ver su contenido? A la larga, vas a tener que crear geometrías de tipo polígono. El código que has puesto ahí es para la creación de geometrías de tipo punto, que es el más simple de todos. Como podés deducir de su nombre, la función gpd.points_from_xy es para puntos nada más. No existe una función igual de simple para polígonos, precisamente porque un polígono es una geometría más compleja y las coordenadas pueden ser representadas de maneras diversas.

Se pueden crear geometrías de polígono con la función de shapely shapely.geometry.polygon, que es similar a la función shapely.geometry.Point que demostré en el tutorial.

En el diccionario datos, las referencias a 'NorteBLP.X' y 'SanJuan.X' no tienen mucho sentido, en primer lugar porque no has creado variables NorteBLP y SanJuan. Al leer los archivos, las variables que creaste fueron Mapa5 y Mapa4.

Por otro lado, si esto es algo que vas a hacer solamente una vez, has probado usar herramientas de SIG, como QGIS?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants