Time Series Analysis
Course Code: Y1D1
ECTS Credits: 7.0
Course Description
The Time Series Analysis course provides students with the foundational knowledge and practical skills to analyze, model, and forecast time-dependent data. It introduces the key characteristics of time series, including trend, seasonality, and autocorrelation, and guides students in visualizing and manipulating temporal data using Python libraries such as Pandas and Matplotlib.
Students learn to preprocess time series data by handling missing values, resampling, and creating features that enhance model performance. The course covers forecasting with statistical models, focusing on the autoregressive integrated moving average (ARIMA) approach as a flexible framework for conventional time series analysis.
In the second half, students explore how to apply machine learning techniques—including regression, classification, and clustering—to time series problems. They learn to transform sequential data into supervised learning formats using lagged features and rolling windows. The course also introduces neural networks for forecasting, including recurrent architectures such as RNNs, LSTMs, and GRUs, with an emphasis on preparing, training, and evaluating these models for sequential prediction tasks.
By the end of the course, students will be able to select, implement, and evaluate appropriate methods for time series forecasting using both statistical and machine learning approaches.
Course Content
- Introduction to time series data and its key characteristics
- Time series data manipulation with Pandas and datetime
- Time series visualisation techniques and best practices
- Preprocessing: handling missing data, resampling, and feature engineering
- Autocorrelation and partial autocorrelation analysis
- Forecasting with ARIMA models
- Structuring time series data to enable supervised learning
- Machine learning for time series: regression, classification, clustering
- Model evaluation and validation strategies for time series
- Neural networks for forecasting: RNNs, LSTMs, and GRUs
- Preparing, training, and evaluating deep learning models for sequential data
Prerequisites
- Introduction to Programming with Python (Y1A1)
- Introduction to Machine Learning (Y1B1)
- Deep Learning for Image Classification (Y1C1)
Recommended Reading
- Forecasting: Principles and Practice by Rob J. Hyndman and George Athanasopoulos
- Hands-On Time Series Analysis with Python by B V Vishwas