Skip to main content

Welcome to PyOMU

This library presents a set of tools to perform urban accessibility analysis

Install:

conda create -n env_pyomu -c conda-forge python=3.10 rvlib
conda activate env_pyomu
pip install git+https://github.com/OMU-LATAM/Accesibilidad.git

o 

conda create -n env_pyomu -c conda-forge python=3.10 rvlib
conda activate env_pyomu
pip install pyomu

Use:

from pyomu install pyomu

Notebook example:

https://github.com/OMU-LATAM/Accesibilidad/blob/main/notebooks/medellin.ipynb

los datos para correr este ejemplo están en el directorios tests en .\tests\data

Antecedentes

En el marco de la actualización del Observatorio de Movilidad Urbana (https://omu-latam.org/), se está trabajando en torno a métricas de acceso universal tomando provecho de los avances tecnológicos en el análisis de datos. Esta librería presenta las herramientas utilizadas en el modelo análitico utilizado para analizar la accesibilidad urbana en ciudades de América Latina. Se busca que este modelo sea aplicable a diferentes contextos y replicable por personas con conocimientos técnicos en datos y programación. Los indicadores y mapas resultantes podrán ser una herramienta útil para identificar brechas de acceso en una ciudad y diseñar las correspondientes intervenciones.

Las herramientas desarrolladas para la construcción de un modelo analítico que permite analizar y elaborar indicadores de accesibilidad utiliza fuentes de datos de acceso público con información socioeconómica, cartografía e información de oferta y demanda de viajes. Este modelo se aplica a ciudades de América Latina con el principal objetivo de desarrollar indicadores para ciudades de toda la región que sirvan para comprender mejor la accesibilidad en las distintas ciudades, brindando un mejor entendimiento del sistema urbano y de la movilidad para analistas y tomadores de decisión. Los resultados forman parte de la tercera edición del Observatorio de Movilidad Urbana (OMU), desarrollado por CAF, Banco de Desarrollo de América Latina en conjunto con BID, Banco Interamericano de Desarrollo. Los indicadores elaborados en este documento: accesibilidad, cobertura del transporte público e índice de congestión; se enmarcan dentro de una matriz de 23 indicadores, bajo 4 pilares fundamentales: acceso universal, eficiencia y calidad, seguridad y movilidad verde, cuyo objetivo es la evaluación y monitoreo de métricas relevantes para la movilidad urbana de las ciudades de la región.

Datos de entrada

Como dato de entrada principal se requiere la cartografía censal en el menor nivel de desagregación posible (ej. radios, secciones o manzanas censales), la población en cada polígono y una serie de variables censales seleccionadas que serán utilizadas para la construcción de un indicador de nivel socioeconómico. Se recomienda incluir variables relacionadas con la calidad de los materiales de la vivienda, calidad o acceso a servicios (agua, cloacas, electricidad, etc), acceso a bienes, nivel educativo, etc.

Principales funciones

Nivel socioeconómico

  • calculate_nse: cálculo de nivel socioeconómico en base a datos censales

Utilización cartografía de hexágonos (en base a librería h3)

  • create_h3: en base a la cartografía censal crea una nueva capa de hexágonos

  • distribute_population: distribuye la población censal y nse hacia los hexágonos

Identifica áreas de alta densidad de actividad (como proxy de atractores de viaje)

  • bring_osm: trae equipamientos de OpenStreetMaps
  • assign_weights: asigna ponderadores a los equipamientos
  • activity_density: crea cluster de actividad para utilizar como proxy de atractores de viajesss

Cálculo distancias y tiempos de viaje para una matriz de origenes y destinos

  • measure_distances_osm: genera una matriz de origenes y destinos y calcula las distancias en la red vial de Open Street Maps

  • trips_gmaps_from_od: genera una matriz de origenes y destinos y calcula los tiempos distancias en la red vial de Google Maps para distintos modos de transporte

  • trips_gmaps_from_matrix: en base a una matrix de origenes y destinos existente calcula los tiempos distancias en la red vial de Google Maps para distintos modos de transporte

  • distances_to_equipments: identifica equipamientos más cercanos y calcula cantidad de establecimientos en un rango de distancia y calcula los tiempos de viaje en transporte público al - -equipamiento más cercanos (ej. escuela más cercana desde cada radio censal)

  • calculate_green_space: cálcula m2 de espacios verdes en un rango de distancia y m2 de espacios verdes per-cápita en un rango de distancia

Autores

Sebastián Anapolsky (sanapolsky@gmail.com) Catalina Vanoli (cvanoli@caf.com )

Examples

Calcula variable de NSE y construye cartografía de hexágonos

from pyomu import pyomu

hexs = pyomu.calculate_nse_in_hexagons(censo,
                                      id_censo = id_censo,                          
                                      population=population,
                                      vars_nse = vars_nse, 
                                      city_crs = city_crs,
                                      current_path = current_path,
                                      city=city,
                                      res=8, 
                                      run_always=True)

censo es un DataFrame con la cartografía y variables censales. vars_nse contiene las variables que serán utilizadas para calcular el Nivel Socioeconómico

Identifica áreas de alta densidad de actividad

densidad_actividad = pyomu.calculate_activity_density(hexs,
                                                       tags = {'amenity':True},
                                                       cantidad_clusters = 8,
                                                       city_crs = city_crs,
                                                       current_path = current_path,
                                                       city=city,                              
                                                       run_always=True)

Cálcula tiempos y distancias de viaje

key = '' # Add Google API Key
list_trip_datetime = [datetime.datetime(2022, 9, 6, 8, 0),
                      datetime.datetime(2022, 9, 3, 8, 0),                  
                      datetime.datetime(2022, 9, 4, 8, 0)]
                      
od_matrix_all_day = pyomu.calculate_od_matrix_all_day(origin = hexs, 
                                                        id_origin = 'hex', 
                                                        destination = densidad_actividad, 
                                                        id_destination = 'cluster',                     
                                                        trip_datetime = list_trip_datetime,  
                                                        population=population,
                                                        key = key,      
                                                        normalize=True,
                                                        current_path=current_path, 
                                                        city = city,
                                                        run_always=False)
trip_datetime = datetime.datetime(2022, 9, 6, 8, 0)

od_matrix_osm = pyomu.access.measure_distances_osm(hexs.copy(), 'hex', densidad_actividad, 'cluster', current_path=current_path)

od_matrix = pyomu.access.trips_gmaps_from_matrix( od_matrix = od_matrix_osm,
                                                  trip_datetime = trip_datetime,
                                                  key = key, 
                                                  transit=True,
                                                  driving=True,
                                                  walking=False,
                                                  bicycling=False,
                                                  current_path=current_path, 
                                                  normalize=False)

Resultados

alt text

alt text

alt text

alt text

alt text

alt text

Metadata

Release files for pyomu 0.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyomu 0.2.3
File Size Uploaded
pyomu-0.2.3.tar.gz 44.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyomu 0.2.3
File Interpreter ABI Platform
pyomu-0.2.3-py3-none-any.whl Python 3 none any Details

Total release size: 89.4 kB

Release files / pyomu-0.2.3.tar.gz

Download URL pyomu-0.2.3.tar.gz
Size 44.5 kB
Tags Source
SHA-256 checksum
How to use checksums
18dc7bacb7d5cb26c4420a9328613d12a37335ee1893944ff460bf45c88af46d
BLAKE2b-256 checksum
How to use checksums
a88684b86fb4c6c7379d66a5888afcbd72afb4b0d1575497003567e8f341255b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.13

Release files / pyomu-0.2.3-py3-none-any.whl

Download URL pyomu-0.2.3-py3-none-any.whl
Size 44.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0738644a117f5a4d72e961fbca4e181abfc0b7e60f0f2320488ee1cab535320f
BLAKE2b-256 checksum
How to use checksums
8d67c9562a0854cb47c5897047d37934ac8c9a17d54e3c03cbadfe54823fb03a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.13

Release history Release notifications | RSS feed

This release

0.2.3 This release

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page