An introduction into time series forecasting basics, challenges, best practices.
This workshop is designed to be run within GitHub Codespaces.
- Go to the repository
- Switch branches to
feature/workshop
- Click on
"Code"
and select"Codespaces"
- Click
"Create codespace on feature/workshop"
- Wait. A new docker image with your own cloud-development environment is spun up (should be visible in a new browser window). This may take a while.
- Wait some more. Even after the VS-Code IDE is loaded, it takes some time to install plugins and set everything up. This should be shown in the terminal, but sometimes you'll just have to wait until the clock symbol in the extensions disappears.
- After the IDE is properly loaded in the browser, check if everything is set up correctly by running
poetry run pytest
in the terminal. - Go to the
/notebooks
folder and open the01-Introduction.ipynb
notebook. - Click
Run All
and select.venv
as the Python interpreter when prompted.
Instead of working in Codespaces, you could just as well clone the repository and set up a local development environment. There are no guarantees for everything to work, though.
This is how you do it:
- Clone the repository.
- Have Python installed and install Poetry.
- Run
poetry install
in the root folder of the repository. - Run
poetry run pytest
to check if everything is set up correctly. - Run
poetry run jupyter lab
to start a local Jupyter server and run the notebooks.
- Udemy: Parts of this workshop is built upon the excellent Udemy course on Feature Engineering for Time Series Forecasting. It's an older course but it checks out. Instead of an academic approach it has lots of great hands-on examples and explanations how stuff is actuall done in production.
- GitHub Codespaces: Pre-configured dev environments in the cloud!
- VisualStudio Code A lightweight and awesome interactive development envrionment. GitHub, VSCode, Copilot... How did we all become Microsoft fanpeople?
- Jupyter Sort of an IDE (not really?) that's great for data science analysis and early-stage development. Stay idempotent and beware of cell execution order, though (cf. introduction notebook).
- Poetry: The hands down best dependency management and packaging tool for Python. Yes, dependency management in Python is super messy and annoying. With Poetry it's a bit less messy (but still annoying).