These notebooks were used as part of the data science for energy engineers course to introduce students to exploratory data analysis, forecasting and optimal decision making. While the course was taught using Deepnote, the notebooks can also be run in a standalone manner (requirements.txt contains a list of relevant dependencies).
Lecture 0 is an introduction to energy data science use cases as well as some pointers to existing resources on the internet (e.g. lectures etc.).
Lecture 1 provides an introduction to exploratory data analysis with a dataset containing energy demand for 200 Flemish households. Some of the libraries we discuss in the notebook include Pandas, Modin, Missingo and Dash.
Lectures 2 and 3 include introductory time series analysis and forecasting concepts, which can be used to predict the energy demand for the same buildings. Some of the libraries we discuss include scikit-learn, fbprophet and statsmodels.
Lecture 4 on optimal decision making shows how to use a battery-inverter system to optimise energy demand according to a given price for electricity usage. This is done using brute force (random) search, genetic algorithms and linear programming. The libraries we discuss include Deap and Pulp.
The prerequisites folder is taken directly from an introductory course to Python programming from Cambridge University.