Global Opportunities

ECO2018 : Python Programming for Economists

Semester 2 Credit Value: 10
ECTS Credits: 5.0


The computer has become an indispensable tool for conducting research in economics and for analysing data to understand the world around us. This module has two aims. First, to introduce students of economics to the basics of scientific programming. Second, to introduce students to Python, which is the most popular programming language for data science in industry and a versatile open-source tool that can be used in just about any career.

Students who take this module will be well prepared to enter the world of data science and quantitative economics.

Outline Of Syllabus

1. Fundamentals of Python
- numbers and strings
- lists and dictionaries
- loops and iteration
- functions
- boolean logic and conditional statements
- introduction to object-oriented programming: classes, methods, and inheritance
2. Working with Data
- Pandas and data analysis tools
- series and data frames
- data visualisation with Matplotlib and Plotly
- CSV and JSON file formats
- using Web APIs
3. Python for Scientific Computing
- scientific libraries: NumPy, SciPy, Numba
- roots and fixed points
- optimisation
- parallelisation
4. Applications in Economics

Teaching Methods

Teaching Activities
Category Activity Number Length Student Hours Comment
Guided Independent StudyAssessment preparation and completion130:0030:00formative and summative assessment completion and preparation
Scheduled Learning And Teaching ActivitiesPractical92:0018:00PiP PC labs
Guided Independent StudyDirected research and reading133:0033:00Background reading
Guided Independent StudyIndependent study119:0019:00Practising and gaining understanding of course material
Teaching Rationale And Relationship

This is a very practical subject and it is important that the learning materials are supported by hands-on opportunities. Therefore, all formal teaching takes place in a PC lab where each student has his/her own PC station, such that demonstrations of main concepts by the lecturer can be smoothly intertwined with practical exercises in Python.

Assessment Methods

The format of resits will be determined by the Board of Examiners

Description Length Semester When Set Percentage Comment
Written Examination902A100Alternative format in case of social distancing measures: online, take-home exam.
Formative Assessments
Description Semester When Set Comment
Prob solv exercises2MHomework problem sets
Prob solv exercises2Min-class problem-based exercises
Assessment Rationale And Relationship

The written exam will allow students to demonstrate their individual knowledge of Python under a time constraint, as required in industry.

Students will be given a range of formative exercises to introduce them to relevant tools, develop their understanding of programming concepts, and provide them with the opportunity to gain experience through practical application.

Reading Lists