annotate lifelines_tool/test-data/readme_sample @ 2:dd5e65893cb8 draft default tip

add survival and collapsed life table outputs suggested by Wolfgang
author fubar
date Thu, 10 Aug 2023 22:52:45 +0000
parents 232b874046a7
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
1 ## Lifelines tool
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
2 Input data header = Index(['Unnamed: 0', 'week', 'arrest', 'fin', 'age', 'race', 'wexp', 'mar',
0
dd49a7040643 Initial commit
fubar
parents:
diff changeset
3 'paro', 'prio'],
dd49a7040643 Initial commit
fubar
parents:
diff changeset
4 dtype='object') time column = week status column = arrest
dd49a7040643 Initial commit
fubar
parents:
diff changeset
5 Logrank test for race - 0 vs 1
dd49a7040643 Initial commit
fubar
parents:
diff changeset
6
dd49a7040643 Initial commit
fubar
parents:
diff changeset
7 <lifelines.StatisticalResult: logrank_test>
dd49a7040643 Initial commit
fubar
parents:
diff changeset
8 t_0 = -1
dd49a7040643 Initial commit
fubar
parents:
diff changeset
9 null_distribution = chi squared
dd49a7040643 Initial commit
fubar
parents:
diff changeset
10 degrees_of_freedom = 1
dd49a7040643 Initial commit
fubar
parents:
diff changeset
11 alpha = 0.99
dd49a7040643 Initial commit
fubar
parents:
diff changeset
12 test_name = logrank_test
dd49a7040643 Initial commit
fubar
parents:
diff changeset
13
dd49a7040643 Initial commit
fubar
parents:
diff changeset
14 ---
dd49a7040643 Initial commit
fubar
parents:
diff changeset
15 test_statistic p -log2(p)
dd49a7040643 Initial commit
fubar
parents:
diff changeset
16 0.58 0.45 1.16
2
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
17 #### Survival table using time week and event arrest
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
18 removed observed censored entrance at_risk
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
19 event_at
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
20 0.0 0 0 0 432 432
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
21 1.0 1 1 0 0 432
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
22 2.0 1 1 0 0 431
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
23 3.0 1 1 0 0 430
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
24 4.0 1 1 0 0 429
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
25 5.0 1 1 0 0 428
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
26 6.0 1 1 0 0 427
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
27 7.0 1 1 0 0 426
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
28 8.0 5 5 0 0 425
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
29 9.0 2 2 0 0 420
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
30 10.0 1 1 0 0 418
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
31 11.0 2 2 0 0 417
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
32 12.0 2 2 0 0 415
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
33 13.0 1 1 0 0 413
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
34 14.0 3 3 0 0 412
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
35 15.0 2 2 0 0 409
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
36 16.0 2 2 0 0 407
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
37 17.0 3 3 0 0 405
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
38 18.0 3 3 0 0 402
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
39 19.0 2 2 0 0 399
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
40 20.0 5 5 0 0 397
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
41 21.0 2 2 0 0 392
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
42 22.0 1 1 0 0 390
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
43 23.0 1 1 0 0 389
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
44 24.0 4 4 0 0 388
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
45 25.0 3 3 0 0 384
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
46 26.0 3 3 0 0 381
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
47 27.0 2 2 0 0 378
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
48 28.0 2 2 0 0 376
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
49 30.0 2 2 0 0 374
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
50 31.0 1 1 0 0 372
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
51 32.0 2 2 0 0 371
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
52 33.0 2 2 0 0 369
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
53 34.0 2 2 0 0 367
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
54 35.0 4 4 0 0 365
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
55 36.0 3 3 0 0 361
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
56 37.0 4 4 0 0 358
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
57 38.0 1 1 0 0 354
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
58 39.0 2 2 0 0 353
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
59 40.0 4 4 0 0 351
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
60 42.0 2 2 0 0 347
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
61 43.0 4 4 0 0 345
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
62 44.0 2 2 0 0 341
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
63 45.0 2 2 0 0 339
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
64 46.0 4 4 0 0 337
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
65 47.0 1 1 0 0 333
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
66 48.0 2 2 0 0 332
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
67 49.0 5 5 0 0 330
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
68 50.0 3 3 0 0 325
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
69 52.0 322 4 318 0 322
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
70 #### Life table using time week and event arrest
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
71 removed observed censored at_risk
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
72 event_at
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
73 (-0.001, 13.844] 20 20 0 432
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
74 (13.844, 27.687] 36 36 0 412
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
75 (27.687, 41.531] 29 29 0 376
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
76 (41.531, 55.374] 347 29 318 347
0
dd49a7040643 Initial commit
fubar
parents:
diff changeset
77 ### Lifelines test of Proportional Hazards results with prio, age, race, paro, mar, fin as covariates on KM and CPH in lifelines test
dd49a7040643 Initial commit
fubar
parents:
diff changeset
78 <lifelines.CoxPHFitter: fitted with 432 total observations, 318 right-censored observations>
dd49a7040643 Initial commit
fubar
parents:
diff changeset
79 duration col = 'week'
dd49a7040643 Initial commit
fubar
parents:
diff changeset
80 event col = 'arrest'
dd49a7040643 Initial commit
fubar
parents:
diff changeset
81 baseline estimation = breslow
dd49a7040643 Initial commit
fubar
parents:
diff changeset
82 number of observations = 432
dd49a7040643 Initial commit
fubar
parents:
diff changeset
83 number of events observed = 114
dd49a7040643 Initial commit
fubar
parents:
diff changeset
84 partial log-likelihood = -659.00
2
dd5e65893cb8 add survival and collapsed life table outputs suggested by Wolfgang
fubar
parents: 1
diff changeset
85 time fit was run = 2023-08-10 12:00:14 UTC
0
dd49a7040643 Initial commit
fubar
parents:
diff changeset
86
dd49a7040643 Initial commit
fubar
parents:
diff changeset
87 ---
dd49a7040643 Initial commit
fubar
parents:
diff changeset
88 coef exp(coef) se(coef) coef lower 95% coef upper 95% exp(coef) lower 95% exp(coef) upper 95%
dd49a7040643 Initial commit
fubar
parents:
diff changeset
89 covariate
dd49a7040643 Initial commit
fubar
parents:
diff changeset
90 prio 0.10 1.10 0.03 0.04 0.15 1.04 1.16
dd49a7040643 Initial commit
fubar
parents:
diff changeset
91 age -0.06 0.94 0.02 -0.10 -0.02 0.90 0.98
dd49a7040643 Initial commit
fubar
parents:
diff changeset
92 race 0.32 1.38 0.31 -0.28 0.92 0.75 2.52
dd49a7040643 Initial commit
fubar
parents:
diff changeset
93 paro -0.09 0.91 0.20 -0.47 0.29 0.62 1.34
dd49a7040643 Initial commit
fubar
parents:
diff changeset
94 mar -0.48 0.62 0.38 -1.22 0.25 0.30 1.29
dd49a7040643 Initial commit
fubar
parents:
diff changeset
95 fin -0.38 0.68 0.19 -0.75 -0.00 0.47 1.00
dd49a7040643 Initial commit
fubar
parents:
diff changeset
96
dd49a7040643 Initial commit
fubar
parents:
diff changeset
97 cmp to z p -log2(p)
dd49a7040643 Initial commit
fubar
parents:
diff changeset
98 covariate
dd49a7040643 Initial commit
fubar
parents:
diff changeset
99 prio 0.00 3.53 <0.005 11.26
dd49a7040643 Initial commit
fubar
parents:
diff changeset
100 age 0.00 -2.95 <0.005 8.28
dd49a7040643 Initial commit
fubar
parents:
diff changeset
101 race 0.00 1.04 0.30 1.75
dd49a7040643 Initial commit
fubar
parents:
diff changeset
102 paro 0.00 -0.46 0.65 0.63
dd49a7040643 Initial commit
fubar
parents:
diff changeset
103 mar 0.00 -1.28 0.20 2.32
dd49a7040643 Initial commit
fubar
parents:
diff changeset
104 fin 0.00 -1.98 0.05 4.40
dd49a7040643 Initial commit
fubar
parents:
diff changeset
105 ---
dd49a7040643 Initial commit
fubar
parents:
diff changeset
106 Concordance = 0.63
dd49a7040643 Initial commit
fubar
parents:
diff changeset
107 Partial AIC = 1330.00
dd49a7040643 Initial commit
fubar
parents:
diff changeset
108 log-likelihood ratio test = 32.77 on 6 df
dd49a7040643 Initial commit
fubar
parents:
diff changeset
109 -log2(p) of ll-ratio test = 16.39
dd49a7040643 Initial commit
fubar
parents:
diff changeset
110
dd49a7040643 Initial commit
fubar
parents:
diff changeset
111
dd49a7040643 Initial commit
fubar
parents:
diff changeset
112 Bootstrapping lowess lines. May take a moment...
dd49a7040643 Initial commit
fubar
parents:
diff changeset
113
dd49a7040643 Initial commit
fubar
parents:
diff changeset
114
dd49a7040643 Initial commit
fubar
parents:
diff changeset
115 Bootstrapping lowess lines. May take a moment...
dd49a7040643 Initial commit
fubar
parents:
diff changeset
116
dd49a7040643 Initial commit
fubar
parents:
diff changeset
117 The ``p_value_threshold`` is set at 0.01. Even under the null hypothesis of no violations, some
dd49a7040643 Initial commit
fubar
parents:
diff changeset
118 covariates will be below the threshold by chance. This is compounded when there are many covariates.
dd49a7040643 Initial commit
fubar
parents:
diff changeset
119 Similarly, when there are lots of observations, even minor deviances from the proportional hazard
dd49a7040643 Initial commit
fubar
parents:
diff changeset
120 assumption will be flagged.
dd49a7040643 Initial commit
fubar
parents:
diff changeset
121
dd49a7040643 Initial commit
fubar
parents:
diff changeset
122 With that in mind, it's best to use a combination of statistical tests and visual tests to determine
dd49a7040643 Initial commit
fubar
parents:
diff changeset
123 the most serious violations. Produce visual plots using ``check_assumptions(..., show_plots=True)``
dd49a7040643 Initial commit
fubar
parents:
diff changeset
124 and looking for non-constant lines. See link [A] below for a full example.
dd49a7040643 Initial commit
fubar
parents:
diff changeset
125
dd49a7040643 Initial commit
fubar
parents:
diff changeset
126 <lifelines.StatisticalResult: proportional_hazard_test>
dd49a7040643 Initial commit
fubar
parents:
diff changeset
127 null_distribution = chi squared
dd49a7040643 Initial commit
fubar
parents:
diff changeset
128 degrees_of_freedom = 1
dd49a7040643 Initial commit
fubar
parents:
diff changeset
129 model = <lifelines.CoxPHFitter: fitted with 432 total observations, 318 right-censored observations>
dd49a7040643 Initial commit
fubar
parents:
diff changeset
130 test_name = proportional_hazard_test
dd49a7040643 Initial commit
fubar
parents:
diff changeset
131
dd49a7040643 Initial commit
fubar
parents:
diff changeset
132 ---
dd49a7040643 Initial commit
fubar
parents:
diff changeset
133 test_statistic p -log2(p)
dd49a7040643 Initial commit
fubar
parents:
diff changeset
134 age km 6.99 0.01 6.93
dd49a7040643 Initial commit
fubar
parents:
diff changeset
135 rank 7.40 0.01 7.26
dd49a7040643 Initial commit
fubar
parents:
diff changeset
136 fin km 0.02 0.90 0.15
dd49a7040643 Initial commit
fubar
parents:
diff changeset
137 rank 0.01 0.91 0.13
dd49a7040643 Initial commit
fubar
parents:
diff changeset
138 mar km 1.64 0.20 2.32
dd49a7040643 Initial commit
fubar
parents:
diff changeset
139 rank 1.80 0.18 2.48
dd49a7040643 Initial commit
fubar
parents:
diff changeset
140 paro km 0.06 0.81 0.31
dd49a7040643 Initial commit
fubar
parents:
diff changeset
141 rank 0.07 0.79 0.34
dd49a7040643 Initial commit
fubar
parents:
diff changeset
142 prio km 0.92 0.34 1.57
dd49a7040643 Initial commit
fubar
parents:
diff changeset
143 rank 0.88 0.35 1.52
dd49a7040643 Initial commit
fubar
parents:
diff changeset
144 race km 1.70 0.19 2.38
dd49a7040643 Initial commit
fubar
parents:
diff changeset
145 rank 1.68 0.19 2.36
dd49a7040643 Initial commit
fubar
parents:
diff changeset
146
dd49a7040643 Initial commit
fubar
parents:
diff changeset
147
dd49a7040643 Initial commit
fubar
parents:
diff changeset
148 1. Variable 'age' failed the non-proportional test: p-value is 0.0065.
dd49a7040643 Initial commit
fubar
parents:
diff changeset
149
dd49a7040643 Initial commit
fubar
parents:
diff changeset
150 Advice 1: the functional form of the variable 'age' might be incorrect. That is, there may be
dd49a7040643 Initial commit
fubar
parents:
diff changeset
151 non-linear terms missing. The proportional hazard test used is very sensitive to incorrect
dd49a7040643 Initial commit
fubar
parents:
diff changeset
152 functional forms. See documentation in link [D] below on how to specify a functional form.
dd49a7040643 Initial commit
fubar
parents:
diff changeset
153
dd49a7040643 Initial commit
fubar
parents:
diff changeset
154 Advice 2: try binning the variable 'age' using pd.cut, and then specify it in `strata=['age',
dd49a7040643 Initial commit
fubar
parents:
diff changeset
155 ...]` in the call in `.fit`. See documentation in link [B] below.
dd49a7040643 Initial commit
fubar
parents:
diff changeset
156
dd49a7040643 Initial commit
fubar
parents:
diff changeset
157 Advice 3: try adding an interaction term with your time variable. See documentation in link [C]
dd49a7040643 Initial commit
fubar
parents:
diff changeset
158 below.
dd49a7040643 Initial commit
fubar
parents:
diff changeset
159
dd49a7040643 Initial commit
fubar
parents:
diff changeset
160
dd49a7040643 Initial commit
fubar
parents:
diff changeset
161 Bootstrapping lowess lines. May take a moment...
dd49a7040643 Initial commit
fubar
parents:
diff changeset
162
dd49a7040643 Initial commit
fubar
parents:
diff changeset
163
dd49a7040643 Initial commit
fubar
parents:
diff changeset
164 Bootstrapping lowess lines. May take a moment...
dd49a7040643 Initial commit
fubar
parents:
diff changeset
165
dd49a7040643 Initial commit
fubar
parents:
diff changeset
166
dd49a7040643 Initial commit
fubar
parents:
diff changeset
167 Bootstrapping lowess lines. May take a moment...
dd49a7040643 Initial commit
fubar
parents:
diff changeset
168
dd49a7040643 Initial commit
fubar
parents:
diff changeset
169
dd49a7040643 Initial commit
fubar
parents:
diff changeset
170 Bootstrapping lowess lines. May take a moment...
dd49a7040643 Initial commit
fubar
parents:
diff changeset
171
dd49a7040643 Initial commit
fubar
parents:
diff changeset
172
dd49a7040643 Initial commit
fubar
parents:
diff changeset
173 ---
dd49a7040643 Initial commit
fubar
parents:
diff changeset
174 [A] https://lifelines.readthedocs.io/en/latest/jupyter_notebooks/Proportional%20hazard%20assumption.html
dd49a7040643 Initial commit
fubar
parents:
diff changeset
175 [B] https://lifelines.readthedocs.io/en/latest/jupyter_notebooks/Proportional%20hazard%20assumption.html#Bin-variable-and-stratify-on-it
dd49a7040643 Initial commit
fubar
parents:
diff changeset
176 [C] https://lifelines.readthedocs.io/en/latest/jupyter_notebooks/Proportional%20hazard%20assumption.html#Introduce-time-varying-covariates
dd49a7040643 Initial commit
fubar
parents:
diff changeset
177 [D] https://lifelines.readthedocs.io/en/latest/jupyter_notebooks/Proportional%20hazard%20assumption.html#Modify-the-functional-form
dd49a7040643 Initial commit
fubar
parents:
diff changeset
178 [E] https://lifelines.readthedocs.io/en/latest/jupyter_notebooks/Proportional%20hazard%20assumption.html#Stratification
dd49a7040643 Initial commit
fubar
parents:
diff changeset
179