CS3PP19-Programming in Python for Data Science
Module Provider: School of Mathematical, Physical and Computational Sciences
Number of credits: 10 [5 ECTS credits]
Level:6
Terms in which taught: Autumn term module
Pre-requisites:
Non-modular pre-requisites: Undergraduates must have taken (CS1MA16 or MA1LA) and CS1PR16 and CS2JA16 and postgraduates must be studying for a postgraduate degree in the Department of Computer Science
Co-requisites:
Modules excluded: CS3PD18 Python and Data Science Applications
Current from: 2019/0
Email: t.thorne@reading.ac.uk
Type of module:
Summary module description:
The module introduces students to the Python programming language and the Python data science module ecosystem, including data processing and machine learning libraries. Data manipulation and statistical data science methods are covered.
Aims:
The aim of the module is to introduce students to the Python programming language and enable them to work with current tools used in data science.
This module also encourages students to develop a set of professional skills, such as problem solving; critical analysis of published literature; creativity; technical report writing for technical and non-technical audiences; self-reflection; effective use of commercial software; organisation and time management; numeracy; hypothesis generation and testing
Assessable learning outcomes:
Students should be able to implement common computer science algorithms in the Python programming language, apply functional programming paradigms in Python, to read and manipulate data to extract specific features and to apply statistical methods appropriately to analyse data.
Additional outcomes:
Students will have an appreciation of the wider Python ecosystem and tools.
Outline content:
The course consists of an introduction to the Python programming language followed by the Python data science library ecosystem, and finally example applications.
The Python language will be covered in depth, including:
- Basic flow control, dynamic typing.
- Object oriented language features.
- Functional programming.
Handling data with widely used open source libraries in Python will be covered:
- Working with matrices and arrays using Numpy.
- Using data frames to organise and manipulate data with Pandas.
- Analysing data using scikit-learn.
Example applications to data science:
- Gaussian process regression.
- Mixture models.
Brief description of teaching and learning methods:
The module consists of 2 lectures per week and an assessed assignment. The assignment will put material learnt in the lectures into practice.
Autumn | Spring | Summer | |
Lectures | 14 | ||
Practicals classes and workshops | 6 | ||
Guided independent study: | 80 | ||
Total hours by term | 100 | ||
Total hours for module | 100 |
Method | Percentage |
Written exam | 70 |
Set exercise | 30 |
Summative assessment- Examinations:
One 2 hour exam.
Summative assessment- Coursework and in-class tests:
One programming coursework assignment, due week 10. Contributes 30% of total module mark.
Formative assessment methods:
Feedback during practical classes.
Penalties for late submission:
The Module Convener will apply the following penalties for work submitted late:
The University policy statement on penalties for late submission can be found at: http://www.reading.ac.uk/web/FILES/qualitysupport/penaltiesforlatesubmission.pdf
You are strongly advised to ensure that coursework is submitted by the relevant deadline. You should note that it is advisable to submit work in an unfinished state rather than to fail to submit any work.
Assessment requirements for a pass:
A marks of 40% overall.
Reassessment arrangements:
One examination paper of 2 hours duration in August/September - the resit module mark will be the higher of the exam mark (100% exam) and the exam mark plus previous coursework marks (70% exam, 30% coursework).
Additional Costs (specified where applicable):
Last updated: 26 September 2019
THE INFORMATION CONTAINED IN THIS MODULE DESCRIPTION DOES NOT FORM ANY PART OF A STUDENT'S CONTRACT.