
Course Introduction
An introduction to the section, what topics will be covered are mentioned.
installation of Anaconda. Note, we will cover installation of Anaconda on a Windows 10 machine.
Please check resources link for instructions on how to setup Anaconda on other systems including MacOS or Linux
Notebook server & Jupyter Notebook
An overview of Jupyter Notebooks
Notebooks & Virtual Environments. What is the relationship.
Running an existing Notebook, we will use this notebook in next lesson
Introduction to Python (for those who are new to Python or require a refresher)
Learn Python Programming Language
Introducing Numpy
Numpy Overview
Introduction to Scipy
Overview of two classes in Scipy.spatial module (Optional)
Intro to Pandas
Overview of Pandas Series
Overview of Data Frames
A quick review about OOP in python for those students who need a refresher or haven't worked with OOP
Introduction to GeoPandas, technical explanation of Geodataframe
Geopandas review. Loading a csv into Pandas DataFrame
Student will learn how to generate GeoDataFrame (incl. an efficient method)
Show how to load vector data into geodataframes (GeoJSON & Shapefile)
Learn how to work with CRS and why CRS are important for Spatial operations and Data Types
Review of some properties on the GeoDataFrame
See how a join can be perform using pd.merge
Within and Intersects Spatial Operations & Analysis
Learn how to explode Multi FeatureTypes
Overview of dissolve functionality in geopandas
Quick look at how to perform nearest calculations
Spatial Joins
An example of using multiple operations (analysis) to obtain an answer. Student will be exposed to the buffer operation and the overlay operations. See Resources for more information.
Example data pipeline using Geo Pandas with Python for data processing
Final course review
Are you interested in learning Geo Pandas? Are you new to Geo Pandas and struggling with where to start? Do you need to solve a geospatial problem without using a geospatial database? If you answered 'yes' to any of these questions then this course is for You.
About the Course:
GeoPandas is a very popular Python package that has been successfully used to solve complex Geospatial problems. It makes working with Geospatial data easier with Python. No more need to setup a geospatial database and load data into the database before spatial operations can be performed. Another benefit is that using GeoPandas means geospatial operations can be carried out in-memory and perform much better. It is suitable for many case scenarios and has been widely adopted for building geospatial system and workflows especially on the cloud. Geo Pandas also allows data scientists to explore Geospatial Analysis in their Notebooks. Jupyter Notebook is a widely and commonly used tool by data scientist and therefore is used in this course as a tool to teach the topics.
This course has been designed to allow the student to learn Geo Pandas in a practical way. Beyond focusing on the basics of GeoPandas, this course is a perfect introduction to Geospatial Analysis using Python.
We will cover several foundational topics before moving on to Geo Pandas. This includes Jupyter Notebooks (including installation and setup), Learning Python, Numpy and Pandas and finally learning Geo Pandas. Using this approach will allow the student who is unfamiliar with these topics to learn them before attempting to learn about Geo Pandas. For those students who have experience of Python, Numpy and Pandas can use these foundational sections to refresh their knowledge.
Resources that help with learning are made available for the student to download and practice. It is highly recommended that the students make use of the provided Jupyter Notebooks. Other references have been provided in lessons for the student to explore certain topics further (if they wish to).
It is hoped that this course will enable the learner to understand Geo Pandas and explore further through other advanced courses or resources.
More lectures/content will be added in due course based on students feedback and new content.