Análisis datos INE (GeoDataFrame)
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import geopandas as gpd
df = gpd.read_file('../Geopandas/Directorio_Nacional_de_Empresas_2017-shp/107b4455-4bc0-4695-8a78-b6b7645c5a852020330-1-ppruoq.w6tup.shp')
df
Se coloca la columna "NOM_COMUNA" como Indice para separar los registros
df = df.set_index("NOM_COMUNA")
df
Se Revisa el sistema de referencia del GeoDataFrame
df.crs
Se grafíca para visualizar la totalidad de los registros
df.plot('REGION', figsize =(30,20), legend = True )
ls_comercios = df.loc['LA SERENA']
ls_comercios
#ls_comercios.plot(figsize = (30,20))
coq_comercios = df.loc['COQUIMBO']
coq_comercios
#coq_comercios.plot(figsize = (30,20))
conurbacion_comercios = df.loc[['LA SERENA','COQUIMBO']]
conurbacion_comercios
df2 = gpd.read_file('../Geopandas/Comunas/comunas.shp')
df2
df2.info()
<class 'geopandas.geodataframe.GeoDataFrame'>
RangeIndex: 346 entries, 0 to 345
Data columns (total 12 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 objectid 346 non-null int64
1 shape_leng 346 non-null float64
2 dis_elec 346 non-null int64
3 cir_sena 346 non-null int64
4 cod_comuna 346 non-null int64
5 codregion 346 non-null int64
6 st_area_sh 346 non-null float64
7 st_length_ 346 non-null float64
8 Region 346 non-null object
9 Comuna 346 non-null object
10 Provincia 346 non-null object
11 geometry 346 non-null geometry
dtypes: float64(3), geometry(1), int64(5), object(3)
memory usage: 32.6+ KB
Se Revisa el sistema de referencia del GeoDataFrame
df2.crs
df2 = df2.set_index("Comuna")
df2
df2.plot('codregion', figsize =(30,20), legend = True )
la_serena_poligono = df2.loc[['La Serena']]
la_serena_poligono
coquimbo_poligono = df2.loc[['Coquimbo']]
coquimbo_poligono
la_serena_poligono.plot()
coquimbo_poligono.plot()
conurbacion_poligono = df2.loc[['La Serena','Coquimbo']]
conurbacion_poligono
conurbacion.plot(figsize = (20,10))
conurbacion_poligono["Area"] = conurbacion_poligono.area
conurbacion_poligono["Area"]
conurbacion_poligono['Perimetro'] = conurbacion_poligono.boundary
conurbacion_poligono['Perimetro']
Se agregan las nuevas columnas al GeoDataFrame las columnas las cuales son Area y Perímetro
conurbacion_poligono.head()
conurbacion_poligono.plot('shape_leng', legend = True, figsize = (25,10))
axis = conurbacion_poligono['geometry'].plot(figsize = (40,30))
Mapa_Puntos_laserena_coquimbo = conurbacion_comercios['geometry'].plot(ax = axis, color = 'red')
conurbacion_poligono.to_file("conurbacion_poligono.shp",driver="Shapefile") #Exportar datos
conurbacion_comercios.to_file("conurbacion_comercios.shp",driver="Shapefile") #Exportar datos