Module overview
Linked modules
Pre-requisite: GGES6017 or GGES6013
Aims and Objectives
Learning Outcomes
Learning Outcomes
Having successfully completed this module you will be able to:
- Understand the basic principles of writing useful code for spatial analyses
- Develop programs and algorithms for spatial analyses in ArcGIS using Python
- Understand scripting in Python for data analyses within the ArcGIS environment
Syllabus
This module is heavily practical-based to maximize the opportunities for students to learn and apply programming skills for spatial analysis with real datasets. It starts with several practicals introducing the basics of programming in Python, before then moving to implementing GIS analyses via Python code in the ArcGIS environment. A major emphasis is on general good practice designing workflows and organizing code for spatial analyses, which will be useful when working on spatial analyses in other packages (e.g. QGIS; which is also based on Python code, as well as R).
Introductory lecture
This 1 hour lecture will introduce the students to the main reasons why programming is so useful for spatial analysis, using real examples from the published literature. Topics covered will include reproducibility of code and the ability to batch process analyses.
Practical classes – 3 hours each
Practical 1: Introduction into the basics of Python
Practical 2: Introduction into Python II. Introduction into control statements.
Practical 3: Introduction into Python III. More on control statements, and an introduction to writing functions.
Practical 4: Introduction into Python IV: De-bugging code in Python.
Practical 5: Introduction into scripting GIS workflows in ArcGIS via Arcpy.
Practical 6: Using control statements and functions to run GIS analyses using Arcpy. This will build on the material in Practical 6.
Practical 7: Working with rasters using Arcpy.
Practical 8: Designing efficient workflows using Python in the ArcGIS environment.
Practical 9: Advanced features in Arcpy. Introduction into the NumpyArray and the UpdateCursor.
Practical 10: Advanced use of functions and control statements in Arcpy using the material in Practical 9.
Practical 11: Questions on final assignment.
Learning and Teaching
Teaching and learning methods
The module will consist of :
a)An introductory lecture that outlineswhy programming is such a valuable skill for spatial analyses
b)Practical classes in the computing laboratories. Each of these will consist of a short lecture briefly outlining any necessary background information the datasets being used as well as the key concepts that the practical will cover.
Dissemination of course information via Blackboard that will include lecture and practical handouts, the relevant datasets and coursework information
Type | Hours |
---|---|
Teaching | 34 |
Independent Study | 116 |
Total study time | 150 |
Assessment
Formative
This is how we’ll give you feedback as you are learning. It is not a formal test or exam.
Class practicals
- Assessment Type: Formative
- Feedback: Students will receive regular formative feedback during practicals by being able to compare their work to worked examples and being able to discuss discrepancies between their work and the worked code.
- Final Assessment: No
- Group Work: No
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Assignment | 25% |
Assignment | 75% |
Referral
This is how we’ll assess you if you don’t meet the criteria to pass this module.
Method | Percentage contribution |
---|---|
Assignment | 100% |
Repeat Information
Repeat type: Internal & External