F28SH Programming for Data Analysis

Assoc Prof. Hadj Batatia

Course co-ordinator(s): Assoc Prof. Hadj Batatia (Dubai).

Aims:

To develop further skills and techniques in programming in a high-level language. The ability to construct data structures in a high level language, and implementation algorithms over these data structures.

Detailed Information

Course Description: Link to Official Course Descriptor.

Pre-requisites: none.

Location: Dubai, Edinburgh.

Semester: 1.

Syllabus:

  • Linear structures and operations
  • Linked structures including trees and operations, e.g, tree traversal and update
  • Search and sort algorithms, e.g. binary search, linear search, divide and conquer
  • Array and matrix computing
  • Scientific and statistical computing
  • Data analysis and file I/O
  • 2D visualisation and plotting
  • Testing, checking, linting, packing
  • Simple graphics and image processing

 

 

Learning Outcomes: Subject Mastery

  • To understand properties of and algorithms for fundamental static, dynamic and linked data structures
  • To know when to deploy fundamental data structures and algorithms in practical problem solving
  • To understand fundamental techniques for processing very large data sets from files
  • To gain skill in elementary analyses of fundamental algorithms and data structures to give insight into their time and space complexity bounds
  • To understand correspondences between different data structures and algorithms
  • To develop abilities to translate mathematical equations into relevant computing structures
  • To understand how the choice of algorithms and data structures determines the efficacy of proposed solutions to problems
  • To be able to explain the implications of choosing particular algorithms and data structures for the time and space behaviour of solutions.
  • To develop competency in using tools for testing, checking and packaging

Assessment Methods: Due to covid, assessment methods for Academic Year 2021-22 may vary from those noted on the official course descriptor. Please see the Computer Science Course Weightings and the Maths Course Weightings for 2020-21 Semester 1 assessment methods.

SCQF Level: 8.

Credits: 15.