A set of decks and notebooks with exercises for use in a hands-on causal inference tutorial session

Overview

intro-to-causal-inference

A introduction to causal inference using common tools from the python data stack

Table of Contents

Getting Started

Install graphviz

You'll need graphviz for our first exercise notebook, to visualize causal graphs.

Clone the repository

In your terminal, use git to clone the repo to your machine.

git clone [email protected]:ronikobrosly/causal_inference_intro.git

If you are less comfortable with git, there is an easy alternative: You can simply download a zip file of it here :)

Determine your installation preference

Now that you've installed graphviz and cloned the repo locally, there are two paths to finishing up preparing your machine for this tutorial:

Option 1: installing via pip install in a virtual virtualenv

Create a new virtual environment for this tutorial using this guide. Name your environment intro-to-causal-inference

"Activate" this environment and then run the following command in the root folder of this repo: pip install -r requirement.txt

This will install all the necessary packages for the tutorial.

As an optional step, you can try to run the check_environment.py file (in the root folder of the repo) while within your virtual environment. You can do so by running python check_environment.py in your terminal. It will alert you if you're missing any required python packages.

Option 2: installing via Anaconda python and the conda package manager

If you do not already have the Anaconda distribution of Python 3, please install it.

You can then use the conda tool in your terminal to install the necessary packages:

conda env create -f conda_env.yml

"Activate" the new environment via:

conda activate intro-to-causal-inference

As an optional step, you can try to run the check_environment.py file (in the root folder of the repo) while within your virtual environment. You can do so by running python check_environment.py in your terminal. It will alert you if you're missing any required python packages.

Install a new IPython kernelspec

Once the above is complete, you'll need to run the following commands:

python -m ipykernel install --user --name intro-to-causal-inference --display-name "Python (intro-to-causal-inference)"

Start up jupyter lab and open a notebook

In the terminal, execute jupyter lab.

Navigate to the notebooks directory and open your notebook of choice.

Acknowledgements

I would like to like to acknowledgement the following individuals for creating public causal inference materials that were useful in the creation of this tutorial:

Feedback

I love would to hear your feedback on these tutorial materials! Please send your comments to [email protected].

Owner
Roni Kobrosly
data person 💻
Roni Kobrosly
Using graph_nets for pion classification and energy regression. Contributions from LLNL and LBNL

nbdev template Use this template to more easily create your nbdev project. If you are using an older version of this template, and want to upgrade to

3 Nov 23, 2022
Functional collections extension functions for Python

pyfuncol pyfuncol Installation Usage API Documentation Compatibility Contributing License A Python functional collections library. It extends collecti

Andrea Veneziano 32 Nov 16, 2022
Diff Match Patch is a high-performance library in multiple languages that manipulates plain text.

The Diff Match and Patch libraries offer robust algorithms to perform the operations required for synchronizing plain text. Diff: Compare two blocks o

Google 5.9k Dec 30, 2022
Rufus port to linux, writed on Python3

Rufus-for-Linux Rufus port to linux, writed on Python3 Программа будет иметь тот же интерфейс что и оригинал, и тот же функционал. Программа создается

10 May 12, 2022
This application demonstrates IoTVAS device discovery and security assessment API integration with the Rapid7 InsightVM.

Introduction This repository hosts a sample application that demonstrates integrating Firmalyzer's IoTVAS API with the Rapid7 InsightVM platform. This

Firmalyzer BV 4 Nov 09, 2022
The mock Pokemon Environment I built in 2019 to study Reinforcement Learning + Pokemon

ghetto-pokemon-rl-environment ##NOT MAINTAINED! Fork and maintain yourself. Environment I made back in 2019 to use Pokemon to practice reinforcement l

2 Dec 09, 2021
Simple script with AminoLab to send ghost messages

Simple script with AminoLab to send ghost messages

Moleey 1 Nov 22, 2021
A simply program to find active jackbox.tv game codes

PeepingJack A simply program to find active jackbox.tv game codes How does this work? It uses a threadpool to loop through all possible codes in a ran

3 Mar 20, 2022
A nonebot2 plugin, send news information in a picture form.

A nonebot2 plugin, send news information in a picture form.

幼稚园园长 7 Nov 18, 2022
Simple yet flexible natural sorting in Python.

natsort Simple yet flexible natural sorting in Python. Source Code: https://github.com/SethMMorton/natsort Downloads: https://pypi.org/project/natsort

Seth Morton 712 Dec 23, 2022
Rofi script to minimize / unminimize multiple windows in qtile

Qminimize Rofi script to minimize / unminimize multiple windows in qtile Additional requirements : EWMH module fuzzywuzzy module How to use it : - Clo

9 Sep 18, 2022
A (hopefully) considerably copious collection of classical cipher crackers

ClassicalCipherCracker A (hopefully) considerably copious collection of classical cipher crackers Written in Python3 (and run with PyPy) TODOs Write a

Stanley Zhong 2 Feb 22, 2022
👀 nothing to see here

Woofy Woofy is blue dog companion token of YFI (Wifey) It utilizes a special Woof bonding curve which allows two-way conversion between the tokens. Th

Yearn Finance 36 Mar 14, 2022
Estimating the potential photovoltaic production of buildings (in Berlin)

The following people contributed equally to this repository (in alphabetical order): Daniel Bumke JJX Corstiaen Versteegh This repository is forked on

Daniel Bumke 6 Feb 18, 2022
UF3: a python library for generating ultra-fast interatomic potentials

Ultra-Fast Force Fields (UF3) S. R. Xie, M. Rupp, and R. G. Hennig, "Ultra-fast interpretable machine-learning potentials", preprint arXiv:2110.00624

Ultra-Fast Force Fields 24 Nov 13, 2022
Lenovo Yoga Ideapad Autocharge

Description This program uses the conservation_mode of Lonovo Ideapad / Yoga not

1 Jan 09, 2022
Tools for collecting social media data around focal events

Social Media Focal Events The focalevents codebase provides tools for organizing data collected around focal events on social media. It is often diffi

Ryan Gallagher 80 Nov 28, 2022
Fluxos de captura e subida de dados no datalake da Prefeitura do Rio de Janeiro.

Pipelines Este repositório contém fluxos de captura e subida de dados no datalake da Prefeitura do Rio de Janeiro. O repositório é gerido pelo Escritó

Prefeitura do Rio de Janeiro 19 Dec 15, 2022
Automate the boilerplate while initializing your Python project

Rubric Automate the boilerplate while initializing your Python project Preface Rubric is an opinionated project initializer for Python. It assum

Redowan Delowar 23 Dec 16, 2022
A framework that let's you compose websites in Python with ease!

Perry Perry = A framework that let's you compose websites in Python with ease! Perry works similar to Qt and Flutter, allowing you to create componen

Linkus 13 Oct 09, 2022