{"id":975,"date":"2023-08-09T21:19:33","date_gmt":"2023-08-09T21:19:33","guid":{"rendered":"https:\/\/redpandalab.org\/?p=975"},"modified":"2023-08-16T18:49:19","modified_gmt":"2023-08-16T18:49:19","slug":"conociendo-el-nivel-de-instraestructura","status":"publish","type":"post","link":"https:\/\/redpandalab.org\/en\/conociendo-el-nivel-de-instraestructura\/","title":{"rendered":"Conociendo el nivel de infraestructura de  ciudades utilizando im\u00e1genes satelitales."},"content":{"rendered":"<body>\n<p class=\"wp-block-paragraph\">En este blog te mostraremos algunos de los usos que pod\u00e9s darles a las bases de datos Open Buildings de Google. En concreto trabajaremos con las bases de datos para Nicaragua<strong>,<\/strong> obteniendo como resultado final una base de datos de edificaciones a nivel de departamentos y municipios (ciudades). En este blog usaremos las edificaciones como variable de aproximaci\u00f3n (proxy) al concepto de infraestructura.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Algunos de los usos que puedes darle a la base de datos final incluye estimaciones poblacionales, identificaci\u00f3n de centros urbanos y zonas de riesgo entre muchas otras.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Realizamos el proceso utilizando Python en un Jupyter Notebook y te lo mostraremos paso a paso. Las bases de datos que utilizamos y las resultantes te las dejamos por ac\u00e1:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/sites.research.google\/open-buildings\/\" data-type=\"link\" data-id=\"https:\/\/sites.research.google\/open-buildings\/\">Descargar celdas para Nicaragua de Open Buildings<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/drive.google.com\/file\/d\/1hd_l_vq8OSkhP3s-LUl7d1O0ZjE_XUAC\/view?usp=drive_link\" data-type=\"link\" data-id=\"https:\/\/drive.google.com\/file\/d\/1hd_l_vq8OSkhP3s-LUl7d1O0ZjE_XUAC\/view?usp=drive_link\">Base de datos de pol\u00edgonos de departamentos y municipios de Nicaragua<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/drive.google.com\/file\/d\/17WqU2ltFemvyWWdvp11QFCedIGEaYqRL\/view?usp=sharing\" data-type=\"link\" data-id=\"https:\/\/drive.google.com\/file\/d\/17WqU2ltFemvyWWdvp11QFCedIGEaYqRL\/view?usp=sharing\">Base de datos de edificaci\u00f3n de Nicaragua a nivel de departamentos y municipios<\/a><\/p>\n\n\n\n<div class=\"wp-block-essential-blocks-advanced-heading\"><div class=\"eb-parent-wrapper eb-parent-eb-advance-heading-gsf1faf \"><div class=\"eb-advance-heading-wrapper eb-advance-heading-gsf1faf button-1\" data-id=\"eb-advance-heading-gsf1faf\"><h3 class=\"eb-ah-title\">\u00bfQu\u00e9 es Open Buildings?<\/h3><\/div><\/div><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Open Buildings es una iniciativa de Google que pone a disposici\u00f3n del p\u00fablico un conjunto de datos abiertos a gran escala que contienen contornos de los edificios detectados a trav\u00e9s de im\u00e1genes satelitales de alta resoluci\u00f3n. El dataset contiene 1.8 billones de detecciones de edificios para una superficie de 58 millones de km2. La im\u00e1genes corresponde al a\u00f1o 2021, en algunos casos el a\u00f1o de la detenci\u00f3n puede variar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Al descargar un dataset las variables incluidas son:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>latitude: Latitud en grados decimales del centroide del pol\u00edgono.<\/li>\n\n\n\n<li>longitude: Longitud en grados decimales del centroide del pol\u00edgono.<\/li>\n\n\n\n<li>area_in_meters: \u00c1rea en metros cuadrados del pol\u00edgono.<\/li>\n\n\n\n<li>confidence: Puntuaci\u00f3n de confianza que indica la certeza de que sea una edificaci\u00f3n, este valor var\u00eda de 0.65 a 1.<\/li>\n\n\n\n<li>geometry: Representaci\u00f3n del pol\u00edgono de la edificaci\u00f3n en formato WKT.<\/li>\n\n\n\n<li>full_plus_code: Ubica un punto en el centro de la edificaci\u00f3n.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Puedes conocer m\u00e1s de Open Buildings en <a href=\"https:\/\/sites.research.google\/open-buildings\/\">https:\/\/sites.research.google\/open-buildings\/<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00bfQu\u00e9 se entiende por \u201cedificaciones o edificios\u201d en el contexto de los datos?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">El t\u00e9rmino edificio y edificaci\u00f3n se usar\u00e1 como sin\u00f3nimo, y se refiere a estructuras construidas que tienen una ubicaci\u00f3n y huella f\u00edsica.<\/p>\n\n\n\n<div class=\"wp-block-essential-blocks-advanced-heading\"><div class=\"eb-parent-wrapper eb-parent-eb-advance-heading-4c8vg7c \"><div class=\"eb-advance-heading-wrapper eb-advance-heading-4c8vg7c button-1\" data-id=\"eb-advance-heading-4c8vg7c\"><h2 class=\"eb-ah-title\">Proceso<\/h2><\/div><\/div><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">A continuaci\u00f3n te explicamos los c\u00f3digo que utilizamos, pero primero, te vamos a contar de forma general los que hicimos para que tengas un poco de contexto del proceso.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Como mencionamos anteriormente el resultado de este c\u00f3digo es una base de datos de edificaciones a nivel de departamentos y municipios de Nicaragua. Lo primero que debemos hacer es instalar todas las librer\u00edas de Python que usaremos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Luego debemos descargar las bases de datos correspondientes a Nicaragua. Para esto debemos ir a <a rel=\"noreferrer noopener\" href=\"https:\/\/sites.research.google\/open-buildings\/\" target=\"_blank\">Open Buildings <\/a>y en el apartado \u201cDownload from the map\u201d seleccionar los cuadrantes que corresponde a Nicaragua. Cada cuadrante es una base de datos, y para el caso de Nicaragua fue necesario descargar los datos de dos cuadrantes que luego debemos unir (los CSV pesan 110mb y 3gb). En la imagen 1 te mostramos cuales son estos cuadrantes. Como pod\u00e9s observar, en los cuadrantes donde est\u00e1 Nicaragua, tambi\u00e9n est\u00e1 Honduras, El Salvador, parte de Guatemala, Belice y Costa Rica. Esto significa que debemos limpiar la base de datos. Una vez que hemos dejado solo a Nicaragua, cruzaremos esta base de datos con los pol\u00edgonos de cada municipio del pa\u00eds, y obtendremos una nueva base de datos con las variables de departamento y municipio. Para lograr estos hay que hacer algunas transformaciones de variables y verificaciones que ya te explicaremos en el c\u00f3digo, pero en general ese es el sencillo proceso que hemos realizado.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Imagen 1. Descarga de bases de datos desde el mapa.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"834\" height=\"569\" src=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1-1.png\" alt=\"\" class=\"wp-image-980\" loading=\"lazy\" srcset=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1-1.png 834w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1-1-300x205.png 300w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1-1-768x524.png 768w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1-1-18x12.png 18w\" sizes=\"auto, (max-width: 834px) 100vw, 834px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Una vez que obtengamos la base de datos GIS final, podr\u00e1s conocer la cantidad de edificaciones por departamento y municipios (en metros cuadrados y en cantidades), y cruzar con otras bases de datos.<\/p>\n\n\n\n<div class=\"wp-block-essential-blocks-advanced-heading\"><div class=\"eb-parent-wrapper eb-parent-eb-advance-heading-cn7tgpa \"><div class=\"eb-advance-heading-wrapper eb-advance-heading-cn7tgpa button-1\" data-id=\"eb-advance-heading-cn7tgpa\"><h2 class=\"eb-ah-title\">C\u00f3digo<\/h2><\/div><\/div><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><em>El siguiente c\u00f3digo fue escrito y ejecutado en un Jupyter Notebook, con Python versi\u00f3n 3.9.12.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">El c\u00f3digo mostrado a continuaci\u00f3n est\u00e1 acompa\u00f1ado por comentarios explicando los procesos a realizar. Este c\u00f3digo est\u00e1 listo para que lo copies y pegues en tu Jupyter Notebook y pod\u00e1s seguir el proceso.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">El c\u00f3digo lo dividiremos en tres etapas:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Etapa 1: Importaci\u00f3n de librer\u00edas, base de datos a utilizar y transformaci\u00f3n de variables.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Etapa 2: Importaci\u00f3n de pol\u00edgonos de los municipios y transformaci\u00f3n de variables.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Etapa 3: Uni\u00f3n de DataFrames.<\/p>\n\n\n\n<div class=\"wp-block-essential-blocks-advanced-heading\"><div class=\"eb-parent-wrapper eb-parent-eb-advance-heading-m2apwg6 \"><div class=\"eb-advance-heading-wrapper eb-advance-heading-m2apwg6 button-1\" data-id=\"eb-advance-heading-m2apwg6\"><h3 class=\"eb-ah-title\"><strong>Etapa 1: Importaci\u00f3n de librer\u00edas, base de datos a utilizar y transformaci\u00f3n de variables.<\/strong><\/h3><\/div><\/div><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Importando las librer\u00edas a utilizar\n\npip install geopandas\nimport pandas as pd\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport geopandas as gpd\nfrom shapely.geometry import Point\nfrom shapely import wkt\nfrom shapely import wkb\nfrom shapely.wkt import loads\nimport shapely.wkt\nimport binascii\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Importando los dos archivo CSV correspondientes a los dos poligonos que ubican a Nicaragua y convirti\u00e9ndolos a dataframes de Python. Estos son los dos cuadrantes de la imagen 1. \n\ndf0 = pd.read_csv('8f7_buildings.csv')\n\ndf1 = pd.read_csv('8f1_buildings.csv')<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Uniendo los dos datraframes\n\ndf = pd.concat([df0, df1]).reset_index(drop=True)\ndf.head()<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Convirtiendo la columna de geometr\u00eda de strings a objeto Polygon\n\ndf['geometry'] = df['geometry'].apply(shapely.wkt.loads)\n\n# Convirtiendo el dataframe \"df\" a un GeoDataFrame\n\ngdf = gpd.GeoDataFrame(df, geometry='geometry')<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Obteniendo el pol\u00edgono de Nicaragua\n\n# Importando librer\u00eda que permite obtener datos geogr\u00e1ficos de OpenStreetMap (OSM), y para este caso obtener las fronteras administrativas de Nicaragua.\n\nimport osmnx as ox\n\n# Usando osmnx para obtener el pol\u00edgono de Nicaragua.\n\nnicaragua = ox.geocode_to_gdf('Nicaragua')\n\n# GeoDataFrame cuenta con una sola fila, entonces seleccionamos el primer pol\u00edgono.\n\npolygon = nicaragua['geometry'][0]<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Filtramos los datos para obtener solo la informaci\u00f3n de Nicaragua. Esto puede tomar entre 2 a 4 horas dependiendo de la capacidad de tu computadora. \n\ngdf_nic = gdf[gdf.geometry.within(polygon)]\ngdf_nic<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"450\" src=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1_1-1024x450.png\" alt=\"\" class=\"wp-image-990\" loading=\"lazy\" srcset=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1_1-1024x450.png 1024w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1_1-300x132.png 300w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1_1-768x338.png 768w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1_1-1536x675.png 1536w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1_1-18x8.png 18w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-1_1.png 1638w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Guardando el dataframe de Nicaragua en formato CSV.\n\ngdf_nic.to_csv('gdf_nic.csv')\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Graficando para tener una visualizaci\u00f3n espacial de los datos. Esto lo hacemos para saber como se distribuyen espacialmente las edificaciones.\n\nplt.figure(figsize=(10, 6))\nplt.scatter(gdf_nic['longitude'], gdf_nic['latitude'])\nplt.xlabel('Longitud')\nplt.ylabel('Latitud')\nplt.title('Visualizaci\u00f3n de datos geoespaciales')\nplt.grid(True)\nplt.show()\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"687\" height=\"417\" src=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-2.png\" alt=\"\" class=\"wp-image-991\" loading=\"lazy\" srcset=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-2.png 687w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-2-300x182.png 300w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-2-18x12.png 18w\" sizes=\"auto, (max-width: 687px) 100vw, 687px\" \/><\/figure>\n\n\n\n<div class=\"wp-block-essential-blocks-advanced-heading\"><div class=\"eb-parent-wrapper eb-parent-eb-advance-heading-gj2aawk \"><div class=\"eb-advance-heading-wrapper eb-advance-heading-gj2aawk button-1\" data-id=\"eb-advance-heading-gj2aawk\"><h3 class=\"eb-ah-title\">Etapa 2: Importaci\u00f3n de pol\u00edgonos de los municipios y transformaci\u00f3n de variables.<\/h3><\/div><\/div><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Importando la base de datos para extraer los pol\u00edgonos de los municipios. Esta base de datos te la hemos compartido al inicio de este tutorial.\n\nmuni = pd.read_csv('municipios_nic.csv')\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Transformaci\u00f3n de la variables \"the_geom\" (WKB (Well-Known Binary)) a formato shapely.geometry.\n\nmuni['the_geom'] = muni['the_geom'].apply(lambda x: wkb.loads(binascii.unhexlify(x)))\n\n# Convirtiendo el dataframe muni a formato GeoDataFrame\n\ngdf_muni = gpd.GeoDataFrame(muni, geometry='the_geom')\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Verificando que gdf_nic sean GeoDataFrame para poder unirlos. Esto lo podr\u00edamos omitir, pero siempre es importante verificar.\n\nif isinstance(gdf_nic, gpd.GeoDataFrame):\n    print(\"df es un GeoDataFrame\")\nelse:\n    print(\"df no es un GeoDataFrame\")\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Verificando que gdf_muni sean GeoDataFrame\n\nif isinstance(gdf_muni, gpd.GeoDataFrame):\n    print(\"df es un GeoDataFrame\")\nelse:\n    print(\"df no es un GeoDataFrame\")\n<\/code><\/pre>\n\n\n\n<div class=\"wp-block-essential-blocks-advanced-heading\"><div class=\"eb-parent-wrapper eb-parent-eb-advance-heading-3pkd7di \"><div class=\"eb-advance-heading-wrapper eb-advance-heading-3pkd7di button-1\" data-id=\"eb-advance-heading-3pkd7di\"><h3 class=\"eb-ah-title\">Etapa 3: Uni\u00f3n de DataFrames.<\/h3><\/div><\/div><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Uni\u00f3n de gdf_nic y gdf_muni\n\n# Cambiando el nombre de la variable \"the_geom\" a \"geometry\" en gdf_muni.\n\ngdf_muni = gdf_muni.rename(columns={'the_geom': 'geometry'})\n\n# Definiendo la variables \"geometry\" como la columna de geometr\u00eda activa.\n\ngdf_muni = gdf_muni.set_geometry('geometry')\n\n# Uniendo las bases de datos realizando un spatial join.\n\ngdf_nic_muni = gpd.sjoin(gdf_nic, gdf_muni, how=\"left\", op='intersects')\n\n# La base de datos cuenta con 2,973,301 edificaciones identificadas para Nicaragua.\n\ngdf_nic_muni\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"987\" height=\"467\" src=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-3.png\" alt=\"\" class=\"wp-image-1005\" loading=\"lazy\" srcset=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-3.png 987w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-3-300x142.png 300w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-3-768x363.png 768w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-3-18x9.png 18w\" sizes=\"auto, (max-width: 987px) 100vw, 987px\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Guardando el GeoDataFrame de edificaciones de Nicaragua a nivel de municipios en formato CSV. Pod\u00e9s descargar esta base de datos al inicio de este tutorial.\n\ngdf_nic_muni.to_csv('gdf_nic_muni.csv')\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Hasta aqu\u00ed ya hemos creado la base de datos de edificaci\u00f3n para Nicaragua a nivel de municipios. Ahora toca hacer un an\u00e1lisis exploratorio de los datos para identificar valores at\u00edpicos, nulos, inconsistencias entre otros. A continuaci\u00f3n mostramos el c\u00f3digo que nos permite identificar los valores nulos.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Identificaci\u00f3n de registros\/edificaciones que cuentan con valores nulos.\n\ngdf_nic_muni[gdf_nic_muni['index_right'].isna()]\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"992\" height=\"443\" src=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-4.png\" alt=\"\" class=\"wp-image-1006\" loading=\"lazy\" srcset=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-4.png 992w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-4-300x134.png 300w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-4-768x343.png 768w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-4-18x8.png 18w\" sizes=\"auto, (max-width: 992px) 100vw, 992px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Identificamos 8,018 registros con valores nulos. Estos datos corresponden a registros que no encontraron correspondencia con los pol\u00edgonos de los municipios. Para corregir estos valores nulos podemos ir a cada ubicaci\u00f3n e identificar el municipio correspondiente, este proceso puede que sea muy tardado. En nuestro caso eliminaremos los registros que contengan valores nulos y todos aquellos que tengan puntuaci\u00f3n de confianza (confidence) menor a 0.7, luego mostraremos el ranking de los municipio con mayor \u201cinfraestructura\u201d en Nicaragua. Para este ejemplo, entenderemos el \u00e1rea de las edificaciones como una variable proxy a la infraestructura del municipio.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Eliminando registros\/edificaciones que contengan valores nulos en cualquiera de las columnas\n\ngdf_nic_muni = gdf_nic_muni.dropna()\n\n# Obteniendo solo los registros\/edificaciones con puntaje menor a 0.7.\n\ngdf_nic_muni_07 = gdf_nic_muni[gdf_nic_muni['confidence'] &gt;= 0.7]\n\n# Obteniendo dataframe de los municipios por \u00e1rea de edificaciones en metros cuadrados.\n\ngdf_nic_muni_07_agrupado=gdf_nic_muni_07[['municipio','area_in_meters']].groupby('municipio').sum()\n\ngdf_nic_muni_07_sorted=gdf_nic_muni_07_agrupado.sort_values('area_in_meters', ascending=False)\n\ngdf_nic_muni_07_sorted\n<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"320\" height=\"396\" src=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-5.png\" alt=\"\" class=\"wp-image-1011\" loading=\"lazy\" srcset=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-5.png 320w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-5-242x300.png 242w\" sizes=\"auto, (max-width: 320px) 100vw, 320px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Como podemos observar los tres municipios con mayor infraestructura (\u00e1rea de edificaciones) es Managua, Le\u00f3n y Esteli, por otro lado los que cuentan con menor infraestructura son El Castillo, San Juan del Norte y Desembocadura del Rio Grande.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sin embargo, para hacer un ranking m\u00e1s justos seria necesario comparar el \u00e1rea de edificaciones y el \u00e1rea del municipio. Esto lo hacemos en el siguiente c\u00f3digo: <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"python\" class=\"language-python line-numbers\"># Convirtiendo hectarias y metros cuadrados a kilometros cuadrados.\n\ngdf_nic_muni_07_agrupado['area_in_km2_muni'] = gdf_nic_muni_07_agrupado['area_ha']\/100\n\ngdf_nic_muni_07_agrupado['area_in_km2_edi'] = gdf_nic_muni_07_agrupado['area_in_meters']\/1000000\n\n# Encontrando la relaci\u00f3n entre el \u00e1rea de edificaci\u00f3n y el \u00e1rea del municipio.\n\ngdf_nic_muni_07_agrupado['relacion_edi_muni'] = gdf_nic_muni_07_agrupado['area_in_km2_edi']\/gdf_nic_muni_07_agrupado['area_in_km2_muni']\n\ngdf_nic_muni_07_agrupado['m2_de_edi_por_1km_de_muni'] = gdf_nic_muni_07_agrupado['relacion_edi_muni']*1000000\n\n# Ordenando por la variable \"m2_de_edi_por_1km_de_muni\". Esta variables lo que muestra el \u00e1rea de edificaci\u00f3n en metros cuadrados por cada 1 kilometros cuadrado de \u00e1rea en el municipio.\n\ngdf_nic_muni_07_agrupado_sorted = gdf_nic_muni_07_agrupado.sort_values(by='m2_de_edi_por_1km_de_muni', ascending=False)\ngdf_nic_muni_07_agrupado_sorted<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"875\" height=\"401\" src=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-6.png\" alt=\"\" class=\"wp-image-1019\" loading=\"lazy\" srcset=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-6.png 875w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-6-300x137.png 300w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-6-768x352.png 768w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/imagen-6-18x8.png 18w\" sizes=\"auto, (max-width: 875px) 100vw, 875px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Con este resultado el ranking cambia completamente, y podemos decir que el municipio de Dolores, cuenta con la mayor relaci\u00f3n \u00e1rea de edificaci\u00f3n y \u00e1rea del municipio. Para este municipio por cada kilometro cuadrado de \u00e1rea hay apr\u00f3ximadamente 30 metros cuadrados de edificaci\u00f3n. Los municipios con menor relaci\u00f3n son Puerto Cabezas, Prinzapolka y Waspan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hasta aqu\u00ed llegamos con este tutorial, y como te estar\u00e1s imaginando, las aplicaciones con esta base de datos son much\u00edsimas, algunos de los posibles usos pueden ser la identificaci\u00f3n de los centros urbanos, conteo de viviendas en zonas rurales, edificaciones cerca de zonas de riesgo, entre otros. <\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\">\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"353\" src=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/profile-bottom-blog-1024x353.png\" alt=\"\" class=\"wp-image-1025\" loading=\"lazy\" srcset=\"https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/profile-bottom-blog-1024x353.png 1024w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/profile-bottom-blog-300x103.png 300w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/profile-bottom-blog-768x265.png 768w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/profile-bottom-blog-1536x530.png 1536w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/profile-bottom-blog-18x6.png 18w, https:\/\/redpandalab.org\/wp-content\/uploads\/2023\/08\/profile-bottom-blog.png 1896w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/body>","protected":false},"excerpt":{"rendered":"<p>En este blog te mostraremos algunos de los usos que pod\u00e9s darles a las bases de datos Open Buildings de Google. En concreto trabajaremos con las bases de datos para Nicaragua, obteniendo como resultado final una base de datos de edificaciones a nivel de departamentos y municipios (ciudades). En este blog usaremos las edificaciones como [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":1030,"comment_status":"closed","ping_status":"open","sticky":true,"template":"","format":"standard","meta":{"_eb_attr":"","om_disable_all_campaigns":false,"footnotes":""},"categories":[6,9],"tags":[],"class_list":["post-975","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-analisis-de-datos","category-tutoriales"],"acf":[],"_links":{"self":[{"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/posts\/975","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/comments?post=975"}],"version-history":[{"count":34,"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/posts\/975\/revisions"}],"predecessor-version":[{"id":1034,"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/posts\/975\/revisions\/1034"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/media\/1030"}],"wp:attachment":[{"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/media?parent=975"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/categories?post=975"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/redpandalab.org\/en\/wp-json\/wp\/v2\/tags?post=975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}