Analysis
Getting from a raw download to something you can put in front of someone.
Topics in Analysis
3 topics, 72 guides. Each topic page groups the concepts, the how-to guides and the fixes for that subject.
-
Data cleaning
Turning a messy download into an analysis-ready dataset you can trust.
8 concepts · 21 how-to · 8 fixes → -
Raster & rasterio
Reading, sampling and converting raster data in Python.
4 concepts · 8 how-to · 4 fixes → -
Maps & visualisation
Static plots, choropleths, interactive maps, and exporting images people can use.
4 concepts · 10 how-to · 5 fixes →
Every guide in Analysis
Grouped by topic. A guide that spans two topics appears under both.
Data cleaning 37 guides
- How to Remove Null and Empty Geometries in GeoPandas remove null geometries geopandas
- How to Fix Invalid Geometries in Python (GeoPandas) invalid geometries geopandas
- Why Are My Shapefile Column Names Truncated? How to Fix It shapefile column names truncated
- The Python GIS Data Cleaning Checklist: From Raw Download to Analysis-Ready gis data cleaning python
- How to Find and Remove Duplicate Geometries in GeoPandas remove duplicate geometries geopandas
- How to Clean Messy CSV Coordinates into a Reliable GeoDataFrame clean csv coordinates
- How to Standardise and Repair CRS Across a Folder of Files in Python standardise crs across files python
- How to Clean and Normalise Attribute Columns in a GeoDataFrame clean attribute columns geodataframe
- How to Handle Missing and Null Values in Spatial Datasets in Python handle missing values spatial data python
- How to Snap and Align Geometries to Fix Slivers and Gaps in Python snap geometries fix slivers python
- How to Validate a GeoDataFrame Against a Schema Before Analysis validate geodataframe schema python
- How to Build a Repeatable Data-Cleaning Report in GeoPandas data cleaning report geopandas
- buffer(0) Does Not Fix My Invalid Geometry: What to Do Instead buffer 0 not fixing geometry
- Garbled Attribute Text and UnicodeDecodeError from a Shapefile: How to Fix Encoding shapefile encoding error python
- GeoPandas to_file() Fails on a Column Type: How to Fix It geopandas to_file field type error
- How to Split Multipart Geometries into Single Parts in GeoPandas explode multipart geometries geopandas
- How to Fuzzy-Match Place Names When Joining Spatial Data in Python fuzzy match place names python
- How to Find and Remove Spatial Outliers in a Point Dataset remove spatial outliers python
- How to Clean and Standardise Date Columns in Spatial Data clean date columns spatial data python
- Spatial Data Quality: The Six Dimensions That Matter spatial data quality dimensions
- Null, Empty, Missing and Invalid: Four Kinds of Broken Geometry empty geometry geopandas
- How to Explore a Spatial Dataset You Have Never Seen Before explore spatial dataset python
- Rasterio Returns the Wrong Values: NoData, Scaling and dtype Fixes rasterio nodata wrong values
- Topological Coverage: What "Clean" Means for Adjacent Polygons polygon coverage gaps overlaps
- Repair, Reject or Flag? Choosing What Cleaning Should Do gis data cleaning decisions
- How to Find and Fix Gaps and Overlaps in a Polygon Coverage fix gaps overlaps polygons python
- How to Merge Near-Duplicate Features in a Spatial Dataset merge near duplicate features python
- How to Clean a Line Network: Dangles, Overshoots and Disconnects clean road network topology python
- How to Standardise Attribute Values Against a Controlled Vocabulary standardise attribute values python
- My Cleaned Layer Has More Rows Than the Original: How to Fix It geopandas more rows after cleaning
- Choropleth Classification Explained: Quantiles, Equal Interval and Natural Breaks choropleth classification schemes
- My GeoPandas Choropleth Colours Look Wrong: How to Fix It geopandas choropleth colours wrong
- Test Fixtures for GIS Code: Building Spatial Test Data You Can Trust gis test fixtures python
- How to Set, Assign and Convert CRS in GeoPandas (set_crs vs to_crs) set_crs vs to_crs geopandas
- How to Reproject Between Datums Correctly (and Why the Grid File Matters) datum transformation python pyproj
- Spatial Join Cardinality Explained: One-to-One, One-to-Many and What to Do spatial join one to many
- Attribute Join or Spatial Join? Choosing How to Combine Two Layers attribute join vs spatial join
Raster & rasterio 16 guides
- Vector vs Raster Data in Python GIS: Key Differences vector raster data python gis
- Introduction to Rasterio: Reading Raster Data in Python rasterio python tutorial
- How to Extract Raster Values at Point Locations with Rasterio extract raster values rasterio
- How to Convert a Raster to a Vector in Python raster to vector python
- RasterioIOError: Not Recognized as a Supported File Format (How to Fix) rasterioioerror supported file format
- How to Batch Process Rasters with Rasterio in Python batch process rasters rasterio python
- Rasterio Returns the Wrong Values: NoData, Scaling and dtype Fixes rasterio nodata wrong values
- The Raster Data Model Explained: Bands, dtype, NoData and the Transform raster data model python
- Raster Resampling Explained: Nearest, Bilinear and When Each Is Wrong raster resampling methods
- How to Reproject a Raster in Python with Rasterio reproject raster rasterio
- How to Clip a Raster to a Polygon in Python clip raster to polygon python
- How to Calculate Zonal Statistics in Python zonal statistics python
- How to Rasterize a Vector Layer in Python rasterize vector python
- How to Merge and Mosaic Rasters in Python with Rasterio merge rasters rasterio mosaic
- Raster and Vector Do Not Line Up in Python: How to Fix It raster vector not aligned python
- Rasterio Output GeoTIFF Is Black or Empty: How to Fix It rasterio output black empty
Maps & visualisation 19 guides
- How to Plot Maps in Python with GeoPandas and Matplotlib plot map geopandas matplotlib
- How to Create Interactive Maps in Python with Folium folium interactive maps python
- How to Create a Choropleth Map in Python with GeoPandas choropleth map geopandas
- How to Save a Map as an Image in Python with Matplotlib save map image matplotlib python
- Why Does My GeoPandas Map Look Upside Down? geopandas map upside down
- Why Is My GeoPandas Plot Blank or Empty? How to Fix It geopandas plot blank
- How to Style Layers and Export Map Layouts from PyQGIS qgis export layout python
- My Points Plot in the Ocean: Fixing Swapped Latitude and Longitude points plotting in the ocean geopandas
- How QGIS Styling Works: Renderers, Symbols and Rules qgis renderer symbol explained
- Choosing a Map Projection for Display: What Web Mercator Distorts map projection for display python
- Choropleth Classification Explained: Quantiles, Equal Interval and Natural Breaks choropleth classification schemes
- How to Add a Basemap to a GeoPandas Map with contextily geopandas basemap contextily
- How to Add Legends, Labels and a Scale Bar to a GeoPandas Map geopandas map legend labels
- How to Plot Multiple Layers on One Map in GeoPandas plot multiple layers geopandas
- How to Batch-Generate a Map Image for Every Region in Python batch generate maps python
- My GeoPandas Choropleth Colours Look Wrong: How to Fix It geopandas choropleth colours wrong
- My Folium Map Is Blank or Will Not Display: How to Fix It folium map not showing
- How to Set Up Jupyter for Python GIS Work jupyter python gis setup
- Your First Python GIS Analysis: From Download to Map in One Script first python gis analysis