Applied Data Science with Python
Run by School of Computer Science and Electronic Engineering
20.000 Credits or 10.000 ECTS Credits
Organiser: Dr William Teahan
Overall aims and purpose
This is a skills-based module that will demonstrate how Python can be applied to data science. The module will discuss how popular Python toolkits such as pandas, matplotlib, scikit-learn, nltk, and networks can be used effectively to gain insight into data.
Indicative content includes:
- An introduction to data science.
- How to represent and import data into Python for manipulation.
- How to use Python libraries such as Numpy and Pandas to analyse and manipulate data.
- How to use the Python Matplotlib library for data visualisation.
Equivalent to the range 60%-69%. Is able to analyse a task or problem to decide which aspects of theory and knowledge to apply. Solutions are of a workable quality, demonstrating understanding of underlying principles. Major themes can be linked appropriately but may not be able to extend this to individual aspects. Outputs are readily understood, with an appropriate structure but may lack sophistication.
Equivalent to 40%. Uses key areas of theory or knowledge to meet the Learning Outcomes of the module. Is able to formulate an appropriate solution to accurately solve tasks and questions. Can identify individual aspects, but lacks an awareness of links between them and the wider contexts. Outputs can be understood, but lack structure and/or coherence.
Equivalent to the range 70%+. Assemble critically evaluated, relevent areas of knowledge and theory to constuct professional-level solutions to tasks and questions presented. Is able to cross-link themes and aspects to draw considered conclusions. Presents outputs in a cohesive, accurate, and efficient manner.
Build programs that use the a Python library, such as Matplotlib, for data visualisation.
Build non-trivial programs that import and manipulate data in Python.
Apply key principles and methods from Data Science.
Build programs that analyse and manipulate data using Python libraries such as Numpy and Pandas.
Teaching and Learning Strategy
|Practical classes and workshops||
Laboratory instructions and exercises.
Self-study for reading and completing lab exercises.
Lectures to teach theory.
- Literacy - Proficiency in reading and writing through a variety of media
- Numeracy - Proficiency in using numbers at appropriate levels of accuracy
- Computer Literacy - Proficiency in using a varied range of computer software
- Exploring - Able to investigate, research and consider alternatives
- Information retrieval - Able to access different and multiple sources of information
- Critical analysis & Problem Solving - Able to deconstruct and analyse problems or complex situations. To find solutions to problems through analyses and exploration of all possibilities using appropriate methods, rescources and creativity.
- Argument - Able to put forward, debate and justify an opinion or a course of action, with an individual or in a wider group setting
Subject specific skills
- Identify emerging technologies and technology trends;
- Apply underpinning concepts and ideas of engineering;
- Solve problems logically and systematically;
- Assess and choose optimal methods and approaches for the specification, design, implementation and evaluation of engineering solutions.
- Access and synthesize information and literature sources;
- Analyse and display data using appropriate methods and mathematical techniques;
- Demonstrate familiarity with relevant subject specific and general computer software packages.
- Demonstrate an awareness of current advances and contemporary approaches in the discipline and have strategies for keeping that awareness current;
- Knowledge and understanding of facts, concepts, principles & theories
- Problem solving strategies
- Deploy theory in design, implementation and evaluation of systems
- Specify, design or construct computer-based systems
- Evaluate systems in terms of quality and trade-offs
- Deploy tools effectively
- Development of general transferable skills
- Specify, deploy, verify and maintain information systems
- Defining problems, managing design process and evaluating outcomes
- System Design
- Knowledge and/or understanding of appropriate scientific and engineering principles
- Knowledge and understanding of mathematical principles
- Knowledge and understanding of computational modelling
- Specify, deploy, verify and maintain computer-based systems
- Principles of appropriate supporting engineering and scientific disciplines
Resource implications for students
Resources are public domain or online.
Talis Reading listhttp://readinglists.bangor.ac.uk/modules/ice-2702.html
"Python Data Science Handbook: Essential Tools for Working with Data". Jake VandaPlas. 2017. O'Reilly.
Courses including this module
Compulsory in courses:
- N109: BSc Bus Analytics w Financial Tech year 2 (BSC/BAFT)
- N312: BSc Banking with Financial Tech year 2 (BSC/BKFT)
- I110: BSc Computer Information Systems year 2 (BSC/CIS)
- I11B: BSc Computer Information Systems (4 year with Incorp Found) year 2 (BSC/CIS1)
- IN00: BSc Computer Information Systems for Business year 2 (BSC/CISB)
- IN0B: BSc Computer Information Sys for Bus (4 year w Incorp Found) year 2 (BSC/CISB1)
- IN02: BSc Computer Information Systems for Business (Franchised) year 2 (BSC/CISBF)
- I111: BSc Computer Information Systems with International Exp year 2 (BSC/CISIE)
- I11P: BSc Computer Information Systems with Industrial Placement year 2 (BSC/CISP)
- H118: BSc Data Science & Artificial Intelligencetellig year 2 (BSC/DSAI)
- H113: BSc Data Science and Machine Learning year 2 (BSC/DSML)
- H114: BSc Data Science and Visualisation year 2 (BSC/DSV)