Skip to main content

Pandas Network Analysis - dataframes of network queries, quickly

Project description

Build Status Coverage Status

In this case, a picture is worth a thousand words. The image below shows the distance to the 2nd nearest restaurant (rendered by matplotlib) for the city of San Francisco. With only a few lines of code, you can grab a network from OpenStreetMap, take the restaurants that users of OpenStreetMap have recorded, and in about half a second of compute time you can get back a Pandas Series of node_ids and computed values of various measures of access to destinations on the street network.

Distance to Restaurants

Distance to Restaurants

Beyond simple access to destination queries, this library also implements more general aggregations along the street network (or any network). For a given region, this produces hundreds of thousands of overlapping buffer queries (still performed in less than a second) that can be used to characterize the local neighborhood around each street intersection. The result can then be mapped, or assigned to parcel and building records, or used in statistical models as we commonly do with UrbanSim. This is in stark contrast to the arbitrary non-overlapping geographies ubiquitous in GIS. Although there are advantages to the GIS approach, we think network queries are a more accurate representation of how people interact with their environment.

We look forward to creative uses of a general library like this - please let us know if you think you have a great use case by tweeting us at @urbansim or post on the UrbanSim forum.


Documentation for Pandana is now available.

Thorough API documentation for Pandana is also available.


None of this would be possible without the help of Dennis Luxen and his OSRM ( Thank you Dennis!

Academic Literature

A complete description of the methodology was presented at the Transportation Research Board Annual Conference in 2012. Please cite this paper when referring to the methodology implemented by this library.

Project details

Release history Release notifications

This version
History Node


History Node


History Node


History Node


History Node


History Node


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
pandana- (129.0 kB) Copy SHA256 hash SHA256 Wheel cp35 Nov 6, 2017 (119.0 kB) Copy SHA256 hash SHA256 Source None Jul 6, 2017
pandana-0.4.0-cp27-cp27m-macosx_10_10_x86_64.whl (132.1 kB) Copy SHA256 hash SHA256 Wheel cp27 Nov 6, 2017
pandana-0.4.0-cp27-cp27m-win_amd64.whl (140.7 kB) Copy SHA256 hash SHA256 Wheel cp27 Nov 6, 2017
pandana-0.4.0-cp36-cp36m-macosx_10_10_x86_64.whl (129.0 kB) Copy SHA256 hash SHA256 Wheel cp36 Nov 6, 2017
pandana-0.4.0-cp36-cp36m-win_amd64.whl (111.4 kB) Copy SHA256 hash SHA256 Wheel cp36 Nov 6, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page