This repository contains instructional materials for learning data analysis for applications in the physical sciences. They are in the form of Jupyter notebooks using the Python programming language. A suitable textbook to accompany these materials is Measurements and their Uncertainties, by Hughes and Hase.
Image credit: Curve-fitting, by XKCD
You should be able to read, run, and modify the notebooks in this repository following any one of the following methods.
If you are an SFU student, you will probably want to use Syzygy, which you can sign in to with your SFU Computing Account. Syzygy is a cloud-based JupyterLab server hosted by the Digital Research Alliance of Canada. Select the icon above to pull the notebooks into your SFU Syzygy account. Syzygy will prompt you to log in if you are not already logged in. You can also use this link to upload changes to the notebooks that occur during the course. You may also upload files to Syzygy from a local desktop computer.
Within the Syzygy interface, open the .ipynb
notebook files in the notebooks
directory to read the documentation and run the code.
If you prefer to work with the notebooks locally on your personal computer, install the Anaconda Python distribution, download the notebooks from GitHub, and open the notebooks with the JupyterLab application in Anaconda Navigator.
Select the icon above to open the notebooks in the Google Colab service.
Select the icon above to run the notebooks in the free, open-source Binder service. Note that it can take a while to initialize this environment.
The most reliable way to report an issue or suggest an improvement is by opening an issue on GitHub.
You can also email me at [email protected].
These materials have been tested in Python 3.10, including the NumPy (1.23), matplotlib (3.7), and SciPy (1.10) packages. There are many more packages available for doing data analysis in Python, but these three include everything a practicing physicist needs to get started.
The notebook text is licensed under CC BY 4.0. See more at Creative Commons. The notebook code is open source under the MIT License.