-
Notifications
You must be signed in to change notification settings - Fork 239
Expand file tree
/
Copy pathtitanic.py
More file actions
38 lines (25 loc) · 931 Bytes
/
Copy pathtitanic.py
File metadata and controls
38 lines (25 loc) · 931 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import numpy as np
import pandas as pd
import statsmodels.api as sm
import statsmodels.formula.api as smf
from itertools import combinations
import plotnine as p
# read data
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
def read_data(file):
return pd.read_stata("https://github.com/scunning1975/mixtape/raw/master/" + file)
## Simple Difference in Outcomes
titanic = read_data("titanic.dta")
titanic['d'] = 0
titanic.loc[titanic['class']=='1st class', 'd'] = 1
titanic['sex_d'] = 0
titanic.loc[titanic['sex']=='man', 'sex_d'] = 1
titanic['age_d'] = 0
titanic.loc[titanic['age']=='adults', 'age_d'] = 1
titanic['survived_d'] = 0
titanic.loc[titanic['survived']=='yes', 'survived_d'] = 1
ey0 = titanic.loc[titanic['d']==0, 'survived_d'].mean()
ey1 = titanic.loc[titanic['d']==1, 'survived_d'].mean()
sdo = ey1 - ey0
print("The simple difference in outcomes is {:.2%}".format(sdo))