The challenges of contemporary data acquisition and analysis provide new challenges as unstructured data and information reaches the web, e.g. text reviews, social media data, etc. These require the use of specialised data storage, aggregation and processing techniques. This module introduces a range of tools and techniques necessary for working with data in a variety of formats with a view to developing data driven applications. The module focuses primarily on developing applications using the Python scripting language and associated libraries, data analysis and evaluation modelling techniques as well as visualisation approaches. The module covers the following topics:• Data Preparation – Data collection, feature generation and data selection. • Data Pre-processing – data quality, data cleaning, data integration• Data Analysis – techniques of analysing data, such as correlation, regression, forecasting, classification, clustering, including a variety of machine learning methods that are widely used in data mining• Post processing – data visualisation, interpretation, evaluation• Data types and formats: numerical and time series, textual, unstructured • Data sources and interfaces: open data, APIs, social media, web-based• Techniques for dealing with heterogeneous data sets• Developing Data Driven Applications in PythonTools used in this module include Weka, OpenRefine, Pandas, SciPy, NLTK, or R.The Benchmark Statement for Computing specifies the range of skills and knowledge that should be incorporated in computing courses. This module encompasses cognitive skills in Computational Thinking, Modelling and Methods and Tools, Requirements Analysis and practical skills in specification, development and testing and the deployment and use of tools and critical evaluation in addition to providing useful generic skills for employment.