- Notifications
You must be signed in to change notification settings - Fork278
How to do Bayesian statistical modelling using numpy and PyMC3
License
ericmjl/bayesian-stats-modelling-tutorial
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
If you're taking this tutorial at SciPy 2022, please pull the repository 9am CT the day of the tutorial to make sure that you have the most recent version!
How to do Bayesian statistical modelling using numpy and PyMC3.
If you're looking for the material for a specific conference tutorial, navigate to the notebooks directory and look for a subdirectory for the conference you're interested. For example,notebooks/ODSC-East-2020-04-14
contains the material forHugo's ODSC East tutorial on April 14, 2020.
To get started, first identify whether you:
- Would like to run the tutorial material on servers hosted elsewhere, to avoid installation,
- Prefer to use the
conda
package manager (which ships with the Anaconda distribution of Python), - Prefer to use
pipenv
, which is a package authored by Kenneth Reitz for package management withpip
andvirtualenv
, or - Only want to view the website version of the notebooks.
To do this, click on theBinder badge above. This will spin up the necessary computational environment for you so you can write and execute Python code from the comfort of your browser. It is a free service. Due to this, the resources are not guaranteed, though they usually work well. If you want as close to a guarantee as possible, follow the instructions below to set up your computational environment locally (that is, on your own computer).
In your terminal, usegit
to clone the repository locally.
git clone https://github.com/ericmjl/bayesian-stats-modelling-tutorial
Alternatively, you can download the zip file of the repository at the top of the main page of the repository.If you prefer not to use git or don't have experience with it, this a good option.
If you do not already have theAnaconda distribution of Python 3,go get it(note: you can also set up your project environment w/out Anaconda usingpip
to install the required packages;however Anaconda is great for Data Science and we encourage you to use it).
If this is the first time you're setting up your compute environment,use theconda
package managertoinstall all the necessary packagesfrom the providedenvironment.yml
file.
conda env create -f binder/environment.yml
Toactivate the environment, use theconda activate
command.
conda activate bayesian-modelling-tutorial
If you get an error activating the environment, use the oldersource activate
command.
source activate bayesian-modelling-tutorial
Toupdate the environment based on theenvironment.yml
specification file, use theconda update
command.
conda env update -f binder/environment.yml
Please install all of the packages listed in theenvironment.yml
file manually.An example command would be:
pip install networkx scipy ...
If you don't want to mess around with dev-ops, click the following badge to get a Binder session on which you can compute and write code.
You will have to install a new IPython kernelspec if you created a new conda environment with
binder/environment.yml
.python -m ipykernel install --user --name bayesian-modelling-tutorial --display-name "Python (bayesian-modelling-tutorial)"
You can change the--display-name
to anything you want, though if you leave it out, the kernel's display name will default to the value passed to the--name
flag.
- In the terminal, execute
jupyter notebook
.
Navigate to the notebooks directoryand open the notebook01-Student-Probability_a_simulated_introduction.ipynb
.
In the terminal, executejupyter lab
.
Navigate to the notebooks directoryand open the notebook01-Student-Probability_a_simulated_introduction.ipynb
.
Now, if you're using Jupyter lab, for Notebook 2, you'll need to get ipywidgets working.The documentation ishere.
In short, you'll need node installed & you'll need to run the following in your terminal:
jupyter labextension install @jupyter-widgets/jupyterlab-manager
Launch Binder using the button at the top of this README.md. Voila!
If you're interested in only viewing the static HTML versions of the notebooks,the links are provided below:
Part 1: Bayesian Data Science by Simulation
Part 2: Bayesian Data Science by Probabilistic Programming
- Two Group Comparisons: Drug effect on IQ
- Multi-Group Comparisons: Multiple ways of sterilizing phones
- Two Group Comparisons: Darwin's Finches
- Hierarchical Modelling: Baseball
- Hierarchical Modelling: Darwin's Finches
- Bayesian Curve Regression: Identifying Radioactive Element
Development of this type of material is almost always a result of years of discussions between members of a community.We'd like to thank the community and to mention several people who have played pivotal roles in our understanding the the material:Michael Betancourt,Justin Bois,Allen Downey,Chris Fonnesbeck,Jake VanderPlas.Also, Andrew Gelman rocks!
Please leave feedback for ushere!We'll use this information to help improve the teaching and delivery of the material.
Please see individual notebooks for dataset attribution.
Further reading resources that are not specifically tied to any notebooks.
About
How to do Bayesian statistical modelling using numpy and PyMC3
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors9
Uh oh!
There was an error while loading.Please reload this page.