Please note: there may be some adjustments to the teaching arrangements published in the course catalogue for 2020-21. Given current circumstances related to the Covid-19 pandemic it is anticipated that some usual arrangements for teaching on campus will be modified to ensure the safety and wellbeing of students and staff on campus; further adjustments may also be necessary, or beneficial, during the course of the academic year as national requirements relating to management of the pandemic are revised.

Data Programming in Python (ODL) STATS5082

  • Academic Session: 2021-22
  • School: School of Mathematics and Statistics
  • Credits: 10
  • Level: Level 5 (SCQF level 11)
  • Typically Offered: Semester 1
  • Available to Visiting Students: No
  • Available to Erasmus Students: No
  • Taught Wholly by Distance Learning: Yes

Short Description

The course introduces students to object-oriented programming, the programming language Python and its use for data programming and analytics.


The teaching material mostly consists of asynchronous content.

Requirements of Entry

The course is only available to online-distance learning students on the PGCert/PGDip/MSc in Data Analytics and Data Analytics for Government. It is also available to on-campus students in the 5th year of the MSci in Statistics.

Excluded Courses





100% Continuous Assessment

This will typically be made up of a project (25%), and three homework exercises (75%). Full details are provided in the programme handbook.

Course Aims

The aims of this course are:

■ to introduce students to object-oriented programming and Python as a generic programming language;

■ to train students in Python libraries relevant to data analytics such as scikit-learn, NumPy/SciPy and pandas

Intended Learning Outcomes of Course

By the end of this course students will be able to:

■ design and implement functions and classes in Python;

■ make efficient use of the data structures built into Python, such as lists;

■ describe and exploit features of object-oriented design such as polymorphism and inheritance

■ implement data management tasks in Python;

■ implement data-analytic tasks in Python using external libraries such as scikit-learn, NumPy/SciPy and pandas

Minimum Requirement for Award of Credits

Students must submit at least 75% by weight of the components (including examinations) of the course's summative assessment.