
Accelerate gis automation with Python for geospatial analysis, processing vector and raster data using Arcpy, ArcGIS, and QGis. Apply ndVi analysis and plant detection with pandas and NumPy.
Learn geospatial analysis by collecting, visualizing, and interpreting spatial data with GIS and remote sensing, using vector and raster data, buffers, overlays, in QGIS and ArcGIS.
Download and install miniconda on Windows 64-bit to set up Python with conda and pip, register miniconda as the default Python 3.9, and complete the installation.
Learn to create and manage Python environments with conda, activate the chosen environment, and install packages using conda and pip, including numpy and seaborn.
Install and run Jupyter Notebook to write and execute Python code, activate an environment with Miniconda, install Jupyter with Conda, and enable useful nbextensions like code folding and execute time.
Install QGIS and set up the PyQGIS environment for Python scripting on geospatial workflows. Verify Python integration in QGIS and configure an external Python IDE such as PyCharm.
Explore Python basics: variables, dynamic typing, and case sensitive naming. Learn types—int, float, complex, boolean, string, None, tuple, list, set, dict, and range, rules that identifiers cannot start with digits.
Explore how Python uses control flow with loops, conditional statements, and function calls. Learn if-else decisions, while loops, and for loops, and note that for loops are often preferred.
Learn how Python functions encapsulate reusable blocks of code, how to define and call them, and how to pass arguments to print outputs like hello from Python tutorial.
Create a simple module from the Python shell and import it for use. Import built-in modules like platform and installed packages such as matplotlib.pyplot as plt.
Master Python file handling by creating, reading, updating, and deleting files using the open function and modes r, a, w, and x, with practical examples.
Learn how to manage directories in Python using the os module, including getting the current working directory, changing to the home directory, and listing files with os.listdir.
Explore data manipulation with Pandas to create and filter data frames, merge datasets, and derive cleaner features for AI and ML, using boolean slicing and practical product examples.
Import a CSV into Jupyter Notebook and clean data with Pandas by handling missing values, clipping NDVI outliers, and encoding health as binary for preprocessing.
Open and use the Python Console in ArcMap to script with arcpy, run code, manage data, and automate geospatial workflows in ArcGIS Desktop.
Add, remove, and manipulate vector layers and shapefiles in ArcMap using ArcPy from the Python console, automating data frames and map documents.
Export and manage shapefiles with ArcPy by converting feature classes, selecting cities by population greater than 1 million, and intersecting rivers with states to create new shapefiles and updated attributes.
Master vector layer automation with ArcPy by performing union of multiple shapefiles, clipping a boundary, and applying a spatial join, while implementing robust try-except error handling in ArcMap.
Master raster layers in ArcPy by loading rasters, accessing properties, querying values, and reprojecting data using make raster layer and Python snippets in ArcMap.
Master raster layers in ArcPy by applying layer symbology, querying raster values, reprojecting to a new coordinate system, and exporting rasters to TIFF formats.
Automate geoprocessing in ArcGIS using arcpy, accessing management and analysis tools and configuring environment settings. Create buffers, clip rasters, extract vertices, reproject data, and perform batch processing in memory workspaces.
Process Landsat 8 imagery with ArcPy to create a true color image, compute ndvi, reproject rasters, clip to a study area, reclassify ndvi values, and run zonal statistics.
Learn a complete Landsat 8 ndvi workflow in ArcPy: clip to study area, reclassify ndvi, run zonal statistics, and build true color composites for vegetation analysis.
Open and use the Python console in QGIS to script and automate geospatial workflows, print output, manage variables, and streamline scripting with the built-in script editor.
Master vector layers in QGIS using PyQGIS: load shapefiles, edit attributes, apply styles, create categorized renderers, and remove layers to manage geospatial projects efficiently.
Master vector layer queries in PyQGIS by attribute and spatial filters, build population expressions, use spatial indexes, add memory layers, edit features, and apply categorized road symbology.
Manipulate attributes in QGis by adding fields and updating values in the cities layer, and export vector data to shapefile and GeoJSON using PyQGIS.
Load, manipulate, analyze, and export raster data in QGIS with Python scripting, retrieving extent, dimensions, band count, and CRS, while computing min, max, mean, std, and median.
Master raster styling in PyQGIS with a single band pseudo color renderer and color ramp, define min and max, and query values while editing raster blocks.
Learn to create, configure, and analyze raster layers in PyQGIS, including writing new geotiff rasters, applying hillshade, and exporting results with QGIS processing.
Explore how to automate geospatial tasks in QGIS with PyQGIS processing API, using the run method to execute buffers, clips, intersections, and vertex extractions, and load results as new layers.
Automate GIS workflows with PyQGIS processing algorithms, enabling layer reprojection to a new CRS, memory-based results, batch processing, and robust error handling in Python scripts.
Automate professional map production in QGis by programmatically creating layouts, positioning elements, preserving styles, and exporting to PDF or SVG through the layout exporter and batch processing.
Automate geospatial map production with PyQGIS by configuring a map layout, CRS handling, north arrow, scale bar, and legend, then export to pdf and svg.
Compute zonal statistics in python for geospatial analysis using pilst. Import calculate_zs, set shapefile and raster paths, and save results as csv.
calculate ndvi, ndbi, and nbr from landsat 8 imagery in python, using red, nir, and swir bands, access data on google cloud, export nbr as geotiff, and visualize burn severity.
Detect plants in geospatial data using python libraries such as geopandas, rasterio, and opencv; build a plant model, apply mask, threshold, detect blobs, and extract coordinates for csv export.
Analyze lai and lst in a Python case study, including data loading, imputation, visualization, and simple regression, revealing no relation in China and a weak relation in India.
Apply ordinary least squares regression to lai and lst data, assess r-squared and f-statistic, and visualize with histogram, qq plot, and Shapiro-Wilk test for India's lai and lst over time.
Stop clicking. Start scripting.
If you work with spatial data, you already know the pattern: open the GIS, clip the layer, reproject it, run the same tool on forty files, export the map, repeat next week. This course replaces that routine with Python.
You will start by setting up a clean working environment with Miniconda, Jupyter Notebook and QGIS, then learn just enough Python - variables, loops, functions, and data handling with Pandas - to be productive with geospatial data. From there you move into ArcPy and PyQGIS to automate geoprocessing, batch-process vector and raster layers, and generate finished map layouts without touching the interface.
What you will build
NDVI and other remote sensing indices calculated straight from satellite imagery
Zonal statistics that summarise raster values across your own boundaries
A Leaf Area Index (LAI) analysis workflow
A Land Surface Temperature (LST) analysis workflow
A computer vision script that detects and counts individual plants
What you get
Downloadable scripts and datasets so you can follow along with real data
Quizzes after each major section to check your understanding
Code you can adapt directly to your own projects
No prior Python experience is needed. You will need a Windows PC and an interest in GIS - everything else is installed together in the first section.
Taught by Dr. Azad Rasul, a geospatial data scientist and Assistant Professor, with over 150,000 students enrolled across his Udemy courses.
Enrol now and start turning your manual GIS workflows into scripts that run themselves.