/
project.yaml
130 lines (116 loc) · 5.26 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
version: '3.0'
expectations:
population_size: 1000
actions:
generate_study_population_ethnicity_01GT24EY1R04S1Q80YR2MEARHW:
run: cohortextractor:latest generate_cohort
--study-definition study_definition_ethnicity
--param end_date="2023-02-15"
--output-dir output/01GT24EY1R04S1Q80YR2MEARHW --output-format=csv.gz
outputs:
highly_sensitive:
cohort: output/01GT24EY1R04S1Q80YR2MEARHW/input_ethnicity.csv.gz
generate_study_population_01GT24EY1R04S1Q80YR2MEARHW:
run: cohortextractor:latest generate_cohort
--study-definition study_definition
--param codelist_1_path="codelists/codelist_1.csv"
--param codelist_1_system="snomed"
--param codelist_2_path="codelists/codelist_2.csv"
--param codelist_2_system="snomed"
--param codelist_1_frequency="monthly"
--param time_value="5"
--param time_scale="years"
--param time_event="before"
--param codelist_2_comparison_date="event_1_date"
--param operator="AND"
--param population="all"
--param breakdowns="sex,age"
--index-date-range="2019-09-01 to 2023-02-15 by month"
--output-dir=output/01GT24EY1R04S1Q80YR2MEARHW
--output-format=csv.gz
outputs:
highly_sensitive:
cohort: output/01GT24EY1R04S1Q80YR2MEARHW/input_*.csv.gz
join_cohorts_01GT24EY1R04S1Q80YR2MEARHW:
run: >
cohort-joiner:v0.0.38
--lhs output/01GT24EY1R04S1Q80YR2MEARHW/input_20*.csv.gz
--rhs output/01GT24EY1R04S1Q80YR2MEARHW/input_ethnicity.csv.gz
--output-dir output/01GT24EY1R04S1Q80YR2MEARHW/joined
needs: [generate_study_population_01GT24EY1R04S1Q80YR2MEARHW, generate_study_population_ethnicity_01GT24EY1R04S1Q80YR2MEARHW]
outputs:
highly_sensitive:
cohort: output/01GT24EY1R04S1Q80YR2MEARHW/joined/input_20*.csv.gz
generate_measures_01GT24EY1R04S1Q80YR2MEARHW:
run: >
python:latest python analysis/measures.py
--breakdowns="sex,age"
--input_dir="output/01GT24EY1R04S1Q80YR2MEARHW/joined"
--measure="med_review"
needs: [join_cohorts_01GT24EY1R04S1Q80YR2MEARHW]
outputs:
moderately_sensitive:
measure: output/01GT24EY1R04S1Q80YR2MEARHW/joined/measure*rate.csv
decile_measure: output/01GT24EY1R04S1Q80YR2MEARHW/joined/measure*rate_deciles.csv
top_5_table_01GT24EY1R04S1Q80YR2MEARHW:
run: >
python:latest python analysis/top_5.py
--codelist-1-path="codelists/codelist_1.csv"
--codelist-2-path="codelists/codelist_2.csv"
--output-dir="output/01GT24EY1R04S1Q80YR2MEARHW"
needs: [generate_measures_01GT24EY1R04S1Q80YR2MEARHW]
outputs:
moderately_sensitive:
tables: output/01GT24EY1R04S1Q80YR2MEARHW/joined/top_5*.csv
deciles_chart_01GT24EY1R04S1Q80YR2MEARHW:
run: >
deciles-charts:v0.0.33
--input-files output/01GT24EY1R04S1Q80YR2MEARHW/joined/measure_practice_rate_deciles.csv
--output-dir output/01GT24EY1R04S1Q80YR2MEARHW/joined
config:
show_outer_percentiles: true
tables:
output: true
charts:
output: true
needs: [generate_measures_01GT24EY1R04S1Q80YR2MEARHW]
outputs:
moderately_sensitive:
deciles_charts: output/01GT24EY1R04S1Q80YR2MEARHW/joined/deciles_*.*
plot_measure_01GT24EY1R04S1Q80YR2MEARHW:
run: >
python:latest python analysis/plot_measures.py
--breakdowns="sex,age"
--output-dir output/01GT24EY1R04S1Q80YR2MEARHW
needs: [generate_measures_01GT24EY1R04S1Q80YR2MEARHW]
outputs:
moderately_sensitive:
measure: output/01GT24EY1R04S1Q80YR2MEARHW/plot_measure*.png
event_counts_01GT24EY1R04S1Q80YR2MEARHW:
run: >
python:latest python analysis/event_counts.py --input_dir="output/01GT24EY1R04S1Q80YR2MEARHW/joined" --output_dir="output/01GT24EY1R04S1Q80YR2MEARHW"
needs: [join_cohorts_01GT24EY1R04S1Q80YR2MEARHW]
outputs:
moderately_sensitive:
measure: output/01GT24EY1R04S1Q80YR2MEARHW/event_counts.json
create_notebook_01GT24EY1R04S1Q80YR2MEARHW:
run: >
python:latest python analysis/create_notebook.py
--output-dir "output/01GT24EY1R04S1Q80YR2MEARHW"
--codelist-1-description="None"
--codelist-2-description="None"
--codelist-1-link="https://codelists.opensafely.org/codelist/opensafely/dmards/2020-06-23"
--codelist-2-link="https://codelists.opensafely.org/codelist/opensafely/medication-review-opensafely-service-restoration-observatory/24b50f64"
--report-title="Medication Review Report"
--measure-description="Medication Review"
--population="all"
--breakdowns="sex,age"
outputs:
moderately_sensitive:
notebook: output/01GT24EY1R04S1Q80YR2MEARHW/report.ipynb
generate_notebook_01GT24EY1R04S1Q80YR2MEARHW:
run: jupyter:latest jupyter nbconvert /workspace/output/01GT24EY1R04S1Q80YR2MEARHW/report.ipynb --execute --to html --output-dir=/workspace/output/01GT24EY1R04S1Q80YR2MEARHW --ExecutePreprocessor.timeout=86400 --no-input
needs: [create_notebook_01GT24EY1R04S1Q80YR2MEARHW, event_counts_01GT24EY1R04S1Q80YR2MEARHW, deciles_chart_01GT24EY1R04S1Q80YR2MEARHW, top_5_table_01GT24EY1R04S1Q80YR2MEARHW, plot_measure_01GT24EY1R04S1Q80YR2MEARHW]
outputs:
moderately_sensitive:
notebook: output/01GT24EY1R04S1Q80YR2MEARHW/report.html