GIS and Networks

Once students have a proficient knowledge of Python, it is time to learn about GIS and networks. GIS, or Geographic Information System, intruduces shapes, vectors, and location metadata to scripts. Networks increase the functionality of location data, making spacial computations more efficient. This allows for more advanced data analysis and mapping, critical for crisis response.

Github Repos

03-Intro-to-GIS
04-Intro-to-networks
05-Intro-to-Data-Science

Topics Covered

  1. Engineering design and data science
    • How is data used to make decisions?
    • How to identify requirements, constraints, and problems?
    • How to effectively communicate between teams?
    • How can engineering projects fail? What causes failures? How do we learn from failures?
    • How to store and access data in a database for analysis?
  2. Geographic information system (GIS)
    • How to use GeoPandas
    • How to load various GIS file formats
    • How to load raster files with GDAL
    • How to create a map with layers
    • How to do spatial calculations
  3. Common GIS tasks
    • Loading basemaps from repositories
    • Loading shapefiles of data layers
    • Geometric operations for overlays, intersection, union, etc
    • Reclassifying data
    • Loading raster files
    • Computing nearest neighbors, distances, spatial averages, spatial join
    • Machine Learning and forecast-based financing
  4. Networks
    • What are networks and how to use them
    • How to get network data from Open Street Maps?
    • What math can be done on networks, how do these algorithms work?
    • How to visualize networks in GIS?
    • Network properties: edges, vertices, adjacency, matrix representations
    • Shortest path, Djikstra's algorithm, shortest path tree, minimum spanning tree, centrality
    • Plotting measurements on the network
    • Converting graph to geodataframe
    • Exporting to raster, shapefile