| id | heduc | heblack | mixed | years | div | |
|---|---|---|---|---|---|---|
| 0 | 9 | 12-15 years | No | No | 10.546 | No |
| 1 | 11 | < 12 years | No | No | 34.943 | No |
| 2 | 13 | < 12 years | No | No | 2.834 | Yes |
| 3 | 15 | < 12 years | No | No | 17.532 | Yes |
| 4 | 33 | 12-15 years | No | No | 1.418 | No |
| 5 | 36 | < 12 years | No | No | 48.033 | No |
| 6 | 43 | 16+ years | No | No | 16.706 | No |
| 7 | 47 | < 12 years | No | No | 24.999 | No |
| 8 | 50 | < 12 years | No | No | 24.999 | No |
| 9 | 56 | < 12 years | Yes | No | 3.869 | No |
df = patsy.dmatrix('heduc + heblack + heblack:mixed + years + mixed + div -1 ', data, return_type='dataframe')
df.head()
aaf = AalenAdditiveFitter(fit_intercept=True, coef_penalizer=0.5)
timeline = np.linspace(0, 35, 1000)
aaf.fit(df, 'years', event_col='div[T.Yes]', timeline=timeline)
figsize(12.5, 8.5)
aaf.cumulative_hazards_.plot()
plt.legend(loc='upper left')
from lifelines import CoxPHFitter
cp = CoxPHFitter(penalizer=0.5)
cp.fit(df, 'years', event_col='div[T.Yes]')
cp.plot()