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
A Guide for Feature Engineering and Feature Selection, with implementations and examples in Python.

Feature Engineering & Feature Selection A comprehensive guide [pdf] [markdown] for Feature Engineering and Feature Selection, with implementations and

Yimeng.Zhang 968 Dec 29, 2022
A tool for light-duty persistent memoization of API calls

JSON Memoize What is this? json_memoize is a straightforward tool for light-duty persistent memoization, created with API calls in mind. It stores the

1 Dec 11, 2021
IDA Pro plugin that shows the comments in a database

ShowComments A Simple IDA Pro plugin that shows the comments in a database Installation Copy the file showcomments.py to the plugins folder under IDA

Fernando Mercês 32 Dec 10, 2022
VacationCycleLogicBackEnd - Vacation Cycle Logic BackEnd With Python

Vacation Cycle Logic BackEnd Getting Started Existing virtualenv If your project

Mohamed Gamal 0 Jan 03, 2022
🔤 Measure edit distance based on keyboard layout

clavier Measure edit distance based on keyboard layout. Table of contents Table of contents Introduction Installation User guide Keyboard layouts Dist

Max Halford 42 Dec 18, 2022
Blender-miHoYo-Shaders - Shaders for Blender attempting to replicate the shading of games developed by miHoYo

Blender-miHoYo-Shaders - Shaders for Blender attempting to replicate the shading of games developed by miHoYo

Matsuri 449 Jan 07, 2023
Python screenshot library, replacement for the Pillow ImageGrab module on Linux.

tldr: Use Pillow The pyscreenshot module is obsolete in most cases. It was created because PIL ImageGrab module worked on Windows only, but now Linux

455 Dec 24, 2022
Euler 021 Py - Euler Problem 021 solved in Python

Euler_021_Py Euler Problem 021 solved in Python Let d(n) be defined as the sum o

Ariel Tynan 1 Jan 24, 2022
A calculator for common measurements used in sci-fi books.

Sci-fi-speed-calculator A calculator for common measurements used in sci-fi books. Author: Tyler Windmemuth Purpose: This program allows sci-fi author

Tyler Windemuth 0 Apr 22, 2022
Glyph Metadata Palette

This plugin for Glyphs3 allows you to associate arbitrary structured metadata to each glyph in your font.

Simon Cozens 4 Jan 26, 2022
InfiniPy has some neat features - like the endpoint for function

InfiniPy has some neat features - like the endpoint for function

ZeroTwo 7 Nov 20, 2022
Construção de um jogo Dominó na linguagem python com base em algoritmos personalizados.

Domino (projecto-python) Construção de um jogo Dominó na linguaguem python com base em algoritmos personalizados e na: Monografia apresentada ao curso

Nuninha-GC 1 Jan 12, 2022
Um sistema de llogin feito em uma interface grafica.

Interface-para-login Um sistema de login feito com JSON. Utilizando a biblioteca Tkinter, eu criei um sistema de login, onde guarda a informações de l

Mobben 1 Nov 28, 2021
Script to use SysWhispers2 direct system calls from Cobalt Strike BOFs

SysWhispers2BOF Script to use SysWhispers2 direct system calls from Cobalt Strike BOFs. Introduction This script was initially created to fix specific

FalconForce 101 Dec 20, 2022
This tool don't used illegal ativity

ETHICALTOOL This tool for only educational purposes don't used illegal ativity @onlinehacking this tool for pkg update && pkg upgrade && pkg install g

Mrkarthick 4 Dec 23, 2021
Minitel 5 somewhat reverse-engineered

Minitel 5 The Minitel was a french dumb terminal with an embedded modem which had its Golden Age before the rise of Internet. Typically cubic, with an

cLx 10 Dec 28, 2022
Project 2 for Microsoft Azure on WUT

azure-proj2 Project 2 for Microsoft Azure on WUT Table of contents Team Tematyka projektu Architektura Opis rozwiązania Demo dzałania The Team Krzyszt

1 Dec 07, 2021
A rough GSL work DynSAGE of my graduation project

DynSAGE Codes w.r.t DynSAGE-Diffuse can be found in function apply_dyn_model_v2 of src/utils.py. The training entrance is Line 144 - 155 of src/main.p

Yuhan Wang 3 Mar 22, 2022
Python Cheat Sheet

Introduction Pysheeet was created with intention of collecting python code snippets for reducing coding hours and making life easier and faster. Any c

CHANG-NING TSAI 7.5k Dec 30, 2022
An addin for Autodesk Fusion 360 that lets you view your design in a Looking Glass Portrait 3D display

An addin for Autodesk Fusion 360 that lets you view your design in a Looking Glass Portrait 3D display

Brian Peiris 12 Nov 02, 2022