These exercises are designed to run on the CERN SWAN service. You will need an active CERN account to proceed.
Go to https://swan.cern.ch and log in using your CERN credentials.
When the session setup page appears:
- Select 108 in the Software stack dropdown.
- Ensure “Use Python packages installed on CERNBOX” is checked.
- Click “Start my Session” (bottom right).
- Wait for the environment to launch — this may take about one minute.
When you reach the “My Projects” screen in SWAN:
-
Click “Download project from git” (the small cloud-and-arrow icon in the upper-right corner)

-
Enter the repository URL:
https://github.com/lserkin/csc2026-lecture.git
- Click “Download” once.
Please wait for the download to complete — this may take a couple of minutes.
Once the download is complete, you will see yourself within a directory named csc2026-lecture.
Pick the notebook (.ipynb file) you want and launch it (click), a new window will be opened.
Run the notebook by clicking the “▶” Run button repeatedly until all cells have finished executing.
You can also run everything by going into "CELL" and then "Run All"
Instructions are embedded in each file. For some exercises, there are also data files that you can browse by opening them in SWAN.
If you want to run these on your own machine, first install Jupyter Notebooks. Then checkout the exercise material to your machine. You can also run these notebook in Google Colab.
-
numpypackage
Numerical computing, arrays, linear algebra, random sampling. -
pandaspackage
DataFrames, I/O tools, data cleaning, grouping & time series. -
matplotlibpackage
Low-level plotting library used for scientific and publication-quality figures.
-
seabornpackage
High-level statistical visualization built on top of Matplotlib. -
plotlypackage
Interactive plotting library for dynamic graphs, dashboards, and 3D visualization. -
scikit-learnpackage
Machine learning tools for:- preprocessing and feature engineering
- dimensionality reduction (PCA, t-SNE, UMAP)
- clustering (KMeans, DBSCAN, Agglomerative)
- modeling (regression, classification)
- model evaluation and pipelines
- synthetic dataset generation (
make_moons,make_blobs, etc.)