generated from opensafely/research-template
-
Notifications
You must be signed in to change notification settings - Fork 0
/
project.yaml
325 lines (316 loc) · 16.6 KB
/
project.yaml
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
version: '3.0'
expectations:
population_size: 1000
actions:
generate_ethnicity:
run: cohortextractor:latest generate_cohort --study-definition study_definition_ethnicity --output-format=feather
outputs:
highly_sensitive:
cohort: output/input_ethnicity.feather
generate_study_population:
run: cohortextractor:latest generate_cohort --study-definition study_definition
outputs:
highly_sensitive:
cohort: output/input.csv
generate_rates_1:
run: cohortextractor:latest generate_cohort --study-definition study_definition_ratesCopy --index-date-range "2017-01-01 to 2017-06-01 by month" --skip-existing --output-dir=output --output-format=feather
outputs:
highly_sensitive:
cohort: output/measures/inpu*.feather
generate_rates_2:
run: cohortextractor:latest generate_cohort --study-definition study_definition_rates --index-date-range "2023-04-01 to 2023-06-01 by month" --skip-existing --output-dir=output --output-format=feather
outputs:
highly_sensitive:
cohort: output/measures/inp*.feather
join_ethnicity:
run: python:latest python analysis/join_ethnicity.py
needs:
[
generate_rates_1,
generate_rates_2,
generate_ethnicity,
]
outputs:
highly_sensitive:
cohort: output/measures/in*.feather
generate_measures:
run: cohortextractor:latest generate_measures --study-definition study_definition_rates --skip-existing --output-dir=output/measures
needs:
[join_ethnicity]
outputs:
moderately_sensitive:
measure_csv1a: output/measures/measure_self_harmAE*_rate.csv
measure_csv1b: output/measures/measure_self_harmAEbyRegion*_rate.csv
measure_csv1c: output/measures/measure_self_harmAEbyIMD*_rate.csv
measure_csv1d: output/measures/measure_self_harmAEbyEthnicity*_rate.csv
measure_csv1e: output/measures/measure_self_harmAEbyAge*_rate.csv
measure_csv1f: output/measures/measure_self_harmHo*_rate.csv
measure_csv1g: output/measures/measure_self_harmHobyRegion*_rate.csv
measure_csv1h: output/measures/measure_self_harmHobyIMD*_rate.csv
measure_csv1i: output/measures/measure_self_harmHobyEthnicity*_rate.csv
measure_csv1j: output/measures/measure_self_harmHobyAge*_rate.csv
measure_csv1k: output/measures/measure_self_harmDe*_rate.csv
# measure_csv1l: output/measures/measure_self_harmDebyRegion*_rate.csv
# measure_csv1m: output/measures/measure_self_harmDebyIMD*_rate.csv
# measure_csv1n: output/measures/measure_self_harmDebyEthnicity*_rate.csv
# measure_csv1o: output/measures/measure_self_harmDebyAge*_rate.csv
measure_csv2a: output/measures/measure_emot_distAE*_rate.csv
measure_csv2b: output/measures/measure_emot_distAEbyRegion*_rate.csv
measure_csv2c: output/measures/measure_emot_distAEbyIMD*_rate.csv
measure_csv2d: output/measures/measure_emot_distAEbyEthnicity*_rate.csv
measure_csv2e: output/measures/measure_emot_distAEbyAge*_rate.csv
measure_csv2f: output/measures/measure_emot_distHo*_rate.csv
measure_csv2g: output/measures/measure_emot_distHobyRegion*_rate.csv
measure_csv2h: output/measures/measure_emot_distHobyIMD*_rate.csv
measure_csv2i: output/measures/measure_emot_distHobyEthnicity*_rate.csv
measure_csv2j: output/measures/measure_emot_distHobyAge*_rate.csv
measure_csv2k: output/measures/measure_emot_distDe*_rate.csv
# measure_csv2l: output/measures/measure_emot_distDebyRegion*_rate.csv
# measure_csv2m: output/measures/measure_emot_distDebyIMD*_rate.csv
# measure_csv2n: output/measures/measure_emot_distDebyEthnicity*_rate.csv
# measure_csv2o: output/measures/measure_emot_distDebyAge*_rate.csv
measure_csv3a: output/measures/measure_eat_disorAE*_rate.csv
measure_csv3b: output/measures/measure_eat_disorAEbyRegion*_rate.csv
measure_csv3c: output/measures/measure_eat_disorAEbyIMD*_rate.csv
measure_csv3d: output/measures/measure_eat_disorAEbyEthnicity*_rate.csv
measure_csv3e: output/measures/measure_eat_disorAEbyAge*_rate.csv
measure_csv3f: output/measures/measure_eat_disorHo*_rate.csv
measure_csv3g: output/measures/measure_eat_disorHobyRegion*_rate.csv
measure_csv3h: output/measures/measure_eat_disorHobyIMD*_rate.csv
measure_csv3i: output/measures/measure_eat_disorHobyEthnicity*_rate.csv
measure_csv3j: output/measures/measure_eat_disorHobyAge*_rate.csv
measure_csv3k: output/measures/measure_eat_disorDe*_rate.csv
# measure_csv3l: output/measures/measure_eat_disorDebyRegion*_rate.csv
# measure_csv3m: output/measures/measure_eat_disorDebyIMD*_rate.csv
# measure_csv3n: output/measures/measure_eat_disorDebyEthnicity*_rate.csv
# measure_csv3o: output/measures/measure_eat_disorDebyAge*_rate.csv
measure_csv4a: output/measures/measure_lifestyleAE*_rate.csv
measure_csv4b: output/measures/measure_lifestyleAEbyRegion*_rate.csv
measure_csv4c: output/measures/measure_lifestyleAEbyIMD*_rate.csv
measure_csv4d: output/measures/measure_lifestyleAEbyEthnicity*_rate.csv
measure_csv4e: output/measures/measure_lifestyleAEbyAge*_rate.csv
measure_csv4f: output/measures/measure_lifestyleHo*_rate.csv
measure_csv4g: output/measures/measure_lifestyleHobyRegion*_rate.csv
measure_csv4h: output/measures/measure_lifestyleHobyIMD*_rate.csv
measure_csv4i: output/measures/measure_lifestyleHobyEthnicity*_rate.csv
measure_csv4j: output/measures/measure_lifestyleHobyAge*_rate.csv
measure_csv4k: output/measures/measure_lifestyleDe*_rate.csv
# measure_csv4l: output/measures/measure_lifestyleDebyRegion*_rate.csv
# measure_csv4m: output/measures/measure_lifestyleDebyIMD*_rate.csv
# measure_csv4n: output/measures/measure_lifestyleDebyEthnicity*_rate.csv
# measure_csv4o: output/measures/measure_lifestyleDebyAge*_rate.csv
measure_csv5a: output/measures/measure_violence_AE*_rate.csv
measure_csv5b: output/measures/measure_violence_AEbyRegion*_rate.csv
measure_csv5c: output/measures/measure_violence_AEbyIMD*_rate.csv
measure_csv5d: output/measures/measure_violence_AEbyEthnicity*_rate.csv
measure_csv5e: output/measures/measure_violence_AEbyAge*_rate.csv
measure_csv5f: output/measures/measure_violence_Ho*_rate.csv
measure_csv5g: output/measures/measure_violence_HobyRegion*_rate.csv
measure_csv5h: output/measures/measure_violence_HobyIMD*_rate.csv
measure_csv5i: output/measures/measure_violence_HobyEthnicity*_rate.csv
measure_csv5j: output/measures/measure_violence_HobyAge*_rate.csv
measure_csv5k: output/measures/measure_violence_De*_rate.csv
# measure_csv5l: output/measures/measure_violence_DebyRegion*_rate.csv
# measure_csv5m: output/measures/measure_violence_DebyIMD*_rate.csv
# measure_csv5n: output/measures/measure_violence_DebyEthnicity*_rate.csv
# measure_csv5o: output/measures/measure_violence_DebyAge*_rate.csv
measure_csv6a: output/measures/measure_s_m_illn_AE*_rate.csv
measure_csv6b: output/measures/measure_s_m_illn_AEbyRegion*_rate.csv
measure_csv6c: output/measures/measure_s_m_illn_AEbyIMD*_rate.csv
measure_csv6d: output/measures/measure_s_m_illn_AEbyEthnicity*_rate.csv
measure_csv6e: output/measures/measure_s_m_illn_AEbyAge*_rate.csv
measure_csv6f: output/measures/measure_s_m_illn_Ho*_rate.csv
measure_csv6g: output/measures/measure_s_m_illn_HobyRegion*_rate.csv
measure_csv6h: output/measures/measure_s_m_illn_HobyIMD*_rate.csv
measure_csv6i: output/measures/measure_s_m_illn_HobyEthnicity*_rate.csv
measure_csv6j: output/measures/measure_s_m_illn_HobyAge*_rate.csv
measure_csv6k: output/measures/measure_s_m_illn_De*_rate.csv
# measure_csv6l: output/measures/measure_s_m_illn_DebyRegion*_rate.csv
# measure_csv6m: output/measures/measure_s_m_illn_DebyIMD*_rate.csv
# measure_csv6n: output/measures/measure_s_m_illn_DebyEthnicity*_rate.csv
# measure_csv6o: output/measures/measure_s_m_illn_DebyAge*_rate.csv
describe_trends:
run: r:latest analysis/Descriptive_trends.R
needs:
[generate_measures]
outputs:
moderately_sensitive:
fig1a: output/self_harmAE.png
fig2a: output/self_harmAEbyReg.png
fig3a: output/self_harmAEbyIMD.png
fig4a: output/self_harmAEbyEth.png
fig5a: output/self_harmAEbyAge.png
csv1a: output/self_harmAE_rounded.csv
csv2a: output/self_harmAEbyReg_rounded.csv
csv3a: output/self_harmAEbyIMD_rounded.csv
csv4a: output/self_harmAEbyEth_rounded.csv
csv5a: output/self_harmAEbyAge_rounded.csv
fig6a: output/self_harmHo.png
fig7a: output/self_harmHobyReg.png
fig8a: output/self_harmHobyIMD.png
fig9a: output/self_harmHobyEth.png
fig10a: output/self_harmHobyAge.png
csv6a: output/self_harmHo_rounded.csv
csv7a: output/self_harmHobyReg_rounded.csv
csv8a: output/self_harmHobyIMD_rounded.csv
csv9a: output/self_harmHobyEth_rounded.csv
csv10a: output/self_harmHobyAge_rounded.csv
fig11a: output/self_harmDe.png
# fig12a: output/self_harmDebyReg.png
# fig13a: output/self_harmDebyIMD.png
# fig14a: output/self_harmDebyEth.png
# fig15a: output/self_harmDebyAge.png
csv11a: output/self_harmDe_rounded.csv
# csv12a: output/self_harmDebyReg_rounded.csv
# csv13a: output/self_harmDebyIMD_rounded.csv
# csv14a: output/self_harmDebyEth_rounded.csv
# csv15a: output/self_harmDebyAge_rounded.csv
fig1c: output/emot_distAE.png
fig2c: output/emot_distAEbyReg.png
fig3c: output/emot_distAEbyIMD.png
fig4c: output/emot_distAEbyEth.png
fig5c: output/emot_distAEbyAge.png
csv1c: output/emot_distAE_rounded.csv
csv2c: output/emot_distAEbyReg_rounded.csv
csv3c: output/emot_distAEbyIMD_rounded.csv
csv4c: output/emot_distAEbyEth_rounded.csv
csv5c: output/emot_distAEbyAge_rounded.csv
fig6c: output/emot_distHo.png
fig7c: output/emot_distHobyReg.png
fig8c: output/emot_distHobyIMD.png
fig9c: output/emot_distHobyEth.png
fig10c: output/emot_distHobyAge.png
csv6c: output/emot_distHo_rounded.csv
csv7c: output/emot_distHobyReg_rounded.csv
csv8c: output/emot_distHobyIMD_rounded.csv
csv9c: output/emot_distHobyEth_rounded.csv
csv10c: output/emot_distHobyAge_rounded.csv
fig11c: output/emot_distDe.png
# fig12c: output/emot_distDebyReg.png
# fig13c: output/emot_distDebyIMD.png
# fig14c: output/emot_distDebyEth.png
# fig15c: output/emot_distDebyAge.png
csv11c: output/emot_distDe_rounded.csv
# csv12c: output/emot_distDebyReg_rounded.csv
# csv13c: output/emot_distDebyIMD_rounded.csv
# csv14c: output/emot_distDebyEth_rounded.csv
# csv15c: output/emot_distDebyAge_rounded.csv
fig1b: output/eat_disorAE.png
fig2b: output/eat_disorAEbyReg.png
fig3b: output/eat_disorAEbyIMD.png
fig4b: output/eat_disorAEbyEth.png
fig5b: output/eat_disorAEbyAge.png
csv1b: output/eat_disorAE_rounded.csv
csv2b: output/eat_disorAEbyReg_rounded.csv
csv3b: output/eat_disorAEbyIMD_rounded.csv
csv4b: output/eat_disorAEbyEth_rounded.csv
csv5b: output/eat_disorAEbyAge_rounded.csv
fig6b: output/eat_disorHo.png
fig7b: output/eat_disorHobyReg.png
fig8b: output/eat_disorHobyIMD.png
fig9b: output/eat_disorHobyEth.png
fig10b: output/eat_disorHobyAge.png
csv6b: output/eat_disorHo_rounded.csv
csv7b: output/eat_disorHobyReg_rounded.csv
csv8b: output/eat_disorHobyIMD_rounded.csv
csv9b: output/eat_disorHobyEth_rounded.csv
csv10b: output/eat_disorHobyAge_rounded.csv
fig11b: output/eat_disorDe.png
# fig12b: output/eat_disorDebyReg.png
# fig13b: output/eat_disorDebyIMD.png
# fig14b: output/eat_disorDebyEth.png
# fig15b: output/eat_disorDebyAge.png
csv11b: output/eat_disorDe_rounded.csv
# csv12b: output/eat_disorDebyReg_rounded.csv
# csv13b: output/eat_disorDebyIMD_rounded.csv
# csv14b: output/eat_disorDebyEth_rounded.csv
# csv15b: output/eat_disorDebyAge_rounded.csv
fig1d: output/lifestyleAE.png
fig2d: output/lifestyleAEbyReg.png
fig3d: output/lifestyleAEbyIMD.png
fig4d: output/lifestyleAEbyEth.png
fig5d: output/lifestyleAEbyAge.png
csv1d: output/lifestyleAE_rounded.csv
csv2d: output/lifestyleAEbyReg_rounded.csv
csv3d: output/lifestyleAEbyIMD_rounded.csv
csv4d: output/lifestyleAEbyEth_rounded.csv
csv5d: output/lifestyleAEbyAge_rounded.csv
fig6d: output/lifestyleHo.png
fig7d: output/lifestyleHobyReg.png
fig8d: output/lifestyleHobyIMD.png
fig9d: output/lifestyleHobyEth.png
fig10d: output/lifestyleHobyAge.png
csv6d: output/lifestyleHo_rounded.csv
csv7d: output/lifestyleHobyReg_rounded.csv
csv8d: output/lifestyleHobyIMD_rounded.csv
csv9d: output/lifestyleHobyEth_rounded.csv
csv10d: output/lifestyleHobyAge_rounded.csv
fig11d: output/lifestyleDe.png
# fig12d: output/lifestyleDebyReg.png
# fig13d: output/lifestyleDebyIMD.png
# fig14d: output/lifestyleDebyEth.png
# fig15d: output/lifestyleDebyAge.png
csv11d: output/lifestyleDe_rounded.csv
# csv12d: output/lifestyleDebyReg_rounded.csv
# csv13d: output/lifestyleDebyIMD_rounded.csv
# csv14d: output/lifestyleDebyEth_rounded.csv
# csv15d: output/lifestyleDebyAge_rounded.csv
fig1e: output/violence_AE.png
fig2e: output/violence_AEbyReg.png
fig3e: output/violence_AEbyIMD.png
fig4e: output/violence_AEbyEth.png
fig5e: output/violence_AEbyAge.png
csv1e: output/violence_AE_rounded.csv
csv2e: output/violence_AEbyReg_rounded.csv
csv3e: output/violence_AEbyIMD_rounded.csv
csv4e: output/violence_AEbyEth_rounded.csv
csv5e: output/violence_AEbyAge_rounded.csv
fig6e: output/violence_Ho.png
fig7e: output/violence_HobyReg.png
fig8e: output/violence_HobyIMD.png
fig9e: output/violence_HobyEth.png
fig10e: output/violence_HobyAge.png
csv6e: output/violence_Ho_rounded.csv
csv7e: output/violence_HobyReg_rounded.csv
csv8e: output/violence_HobyIMD_rounded.csv
csv9e: output/violence_HobyEth_rounded.csv
csv10e: output/violence_HobyAge_rounded.csv
fig11e: output/violence_De.png
# fig12e: output/violence_DebyReg.png
# fig13e: output/violence_DebyIMD.png
# fig14e: output/violence_DebyEth.png
# fig15e: output/violence_DebyAge.png
csv11e: output/violence_De_rounded.csv
# csv12e: output/violence_DebyReg_rounded.csv
# csv13e: output/violence_DebyIMD_rounded.csv
# csv14e: output/violence_DebyEth_rounded.csv
# csv15e: output/violence_DebyAge_rounded.csv
fig1f: output/s_m_illn_AE.png
fig2f: output/s_m_illn_AEbyReg.png
fig3f: output/s_m_illn_AEbyIMD.png
fig4f: output/s_m_illn_AEbyEth.png
fig5f: output/s_m_illn_AE_rounded.csv
csv2f: output/s_m_illn_AEbyReg_rounded.csv
csv3f: output/s_m_illn_AEbyIMD_rounded.csv
csv4f: output/s_m_illn_AEbyEth_rounded.csv
csv5f: output/s_m_illn_AEbyAge_rounded.csv
fig6f: output/s_m_illn_Ho.png
fig7f: output/s_m_illn_HobyReg.png
fig8f: output/s_m_illn_HobyIMD.png
fig9f: output/s_m_illn_HobyEth.png
fig10f: output/s_m_illn_HobyAge.png
csv6f: output/s_m_illn_Ho_rounded.csv
csv7f: output/s_m_illn_HobyReg_rounded.csv
csv8f: output/s_m_illn_HobyIMD_rounded.csv
csv9f: output/s_m_illn_HobyEth_rounded.csv
csv10f: output/s_m_illn_HobyAge_rounded.csv
fig11f: output/s_m_illn_De.png
# fig12f: output/s_m_illn_DebyReg.png
# fig13f: output/s_m_illn_DebyIMD.png
# fig14f: output/s_m_illn_DebyEth.png
# fig15f: output/s_m_illn_DebyAge.png
csv11f: output/s_m_illn_De_rounded.csv
# csv12f: output/s_m_illn_DebyReg_rounded.csv
# csv13f: output/s_m_illn_DebyIMD_rounded.csv
# csv14f: output/s_m_illn_DebyEth_rounded.csv
# csv15f: output/s_m_illn_DebyAge_rounded.csv