Geo-Python! Python for spatial data

Prasun K. Gupta (~prasunkgupta)




Geoprocessing tasks can be time intensive since they are often performed on a number of different datasets or on large datasets with numerous records.

Scripting is an efficient method of automating geoprocessing tasks. Example:

  1. Automate a workflow / batch processing
  2. Data conversion (OSM - KML - SHP) or (TIFF - IMG - PNG)
  3. Carry out multiple steps for a geospatial analysis and you have to then repeat these (e.g multiple years or multiple locations).

    • Reconcile census tracts across decades
    • Analyze cancer data for multiple years and sites (lung, prostate) with census data
    • Create a storm surge inundation map for every coastal town in Andhra Pradesh

With advent of satellite technology, aerial photography and imaging from UAV's, spatial data (data with is geo-located) has come off prominence. Google Maps and Open Street Maps are the most common real-life examples of how satellite imagery overlaid with physical layers (such as roads, point of interest etc.) can be used for varied applications - from navigation to resource allocation.

This workshop is designed to give you the necessary building blocks / modules in python, which can be integrated and used for various purposes involving spatial data. The workshop is heavily derived from Geoprocessing with Python (by Chris Garrard) and will deal with the nuances of handling geo-referenced raster and vector data. Examples from Python for Hydrology will be touched upon and to show how Python has enabled the user community to use integrate statistics with time series satellite observations (if time permits)

Participants will be exposed to following packages:

  1. GDAL
  2. PyShp / OGR

If you are still not convinced, attend this - Simply to create python tools for the multi-billion dollar geoprocessing software industry! (links - 1, 2, 3, 4, 5)


Knowledge Prerequisites:

  • Not much on the geospatial front.
  • Basic knowledge of Python would be good.
  • Knowledge of NumPy would be a big plus.
  • Knowledge of SciPy, GeoPandas etc. would be an overkill! :P

Software Prerequisites:

  • Python 2.7.x
  • GDAL
  • NumPy
  • SciPy
  • PyShp (
  • QGIS

You could install them separately and use on the default editor or a editor of your choice (Sublime, etc.)


You could install a distribution like Anaconda or Canopy

GDAL can prove to be tricky sometimes. The pypi GDAL page gives fairly detailed instructions on its installation, however, I strongly suggest that you do a fresh installation in case "import gdal" does not work.

Content URLs:

GitHub repo

Slides etc. will be uploaded shortly.

If you wish more contents to be delved into, drop a comment.

Speaker Info:

Electronics engineer with 9 years of experience working with software in different domains in different counties and plethora of languages.

Currently I work with the Indian Space Research Organisation (bio-not updated) and am hooked to Python.

Have 20+ publication on using Python to develop software for geo-spatial data (here are recent few - 1234).

Speaker Links:

Section: Scientific Computing
Type: Workshops
Target Audience: Intermediate
Last Updated: