This review is all about Kaggle’s Geospatial Analysis course in Python. As usual, all courses on Kaggle are free of charge. If you have taken the Pandas course, this will be an easy and fun course for you.
In this course you will learn a bit about the following libraries in Python:
pandas
geopandas
geopy
folium
Geospatial Analysis is all about handling geodata, that is geographical data such as addresses, coordinates and places someone has visited. With this data you can measure distance, figure out optimal places to locate new hospitals given coordinates of historical car accidents and plot geodata in many beautiful ways.
I found this course the most fun I’ve had since I started with Python. There is something compelling with making colorful maps to show.
Population density in central Japan visualized with a Choropleth plot.
The Geospatial Analysis course overview
I didn’t know much about Coordinate Reference Systems, CRS, but after a little reading in lesson two and on this Reddit post on Map Projections I learned that there is no best CRS. It all depends what is important to you. Do you want to measure distance, then one CRS is better than another but if you want to measure area there is yet an even better CRS for you. All coordinate reference systems are projections of the real world and they are all distorted in some way because the earth is a sphere and maps are flat two-dimensional drawings of the sphere we call Earth.
Then in lesson three we got to the fun stuff. Different types of interactive maps. My favorite is the Choropleth map where you add regions from one data set with data from another and give the regions different colors based on your data.
One thing this Kaggle course don’t teach is how to add a tooltip on your Choropleth map to show additional information when you MouseOver a region. This is possible with the folium.GeoJson module and the folium.features.Tooltip method.
Lesson four showed how to make lookups and get coordinates if you have addresses or names of famous places. It also showed how to do spatial joins, which is joins to see which region a coordinate (x,y) belong to from a list of regions and their geometry polygons. Very useful!
Last lesson was about measuring distance and making proximity zones around coordinates on a map.
My thoughts on the course Geospatial Analysis
I had so much fun working with these plots, probably because it was new to me. This was a great start to understand the concepts of Geospatial Analysis and the course only took about 10 hours to complete when I was googling stuff and trying played around with the map visualization tools provided.
Since I’m a complete beginner in geospatial analysis, I can say that I now have tools to do pretty much all geospatial analysis I can think of. I guess the only problem I can think of that I don’t know how to visualize is a problem with many people moving around to different locations at different times. Will someone eventually meet?
If you know how to solve that, feel free to comment below.
Facts about Kaggle’s Geospatial Analysis course
It’s completely free, like everything else on Kaggle
You run everything in your browser and you can easily continue where you left off.
This course takes about 5 to 10 hours depending on if you are in a hurry or if you are enjoying making beautiful maps.
Instructors are Alexis Cook and Jessica Li. Alexis is Head of Kaggle Learn and Jessica is Product Manager at Kaggle.