generated from opensafely/research-template
/
project.yaml
151 lines (134 loc) · 5.32 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
version: '3.0'
expectations:
population_size: 1000
actions:
# Asthma indicator (AST007) actions
generate_study_population_ast007:
run: cohortextractor:latest generate_cohort
--study-definition study_definition_ast007
--index-date-range "2019-01-01 to 2022-03-31 by month"
--output-dir=output
outputs:
highly_sensitive:
cohort: output/input_ast007*.csv
generate_study_population_ethnicity:
run: cohortextractor:latest generate_cohort
--study-definition study_definition_ethnicity
--output-dir=output
outputs:
highly_sensitive:
cohort: output/input_ethnicity.csv
join_ethnicity_ast007:
run: >
cohort-joiner:v0.0.46
--lhs output/input_ast007*.csv
--rhs output/input_ethnicity.csv
--output-dir output/joined
needs: [generate_study_population_ethnicity, generate_study_population_ast007]
outputs:
highly_sensitive:
cohort: output/joined/input_ast007*.csv
generate_measures_ast007:
run: cohortextractor:latest generate_measures
--study-definition study_definition_ast007
--output-dir=output/joined
needs: [generate_study_population_ast007, generate_study_population_ethnicity, join_ethnicity_ast007]
outputs:
moderately_sensitive:
measure_csv: output/joined/measure_*_rate.csv
join_measures_ast007:
run: python:latest python analysis/join_and_round.py
--input-list output/joined/measure_ast007_total_rate.csv
--input-list output/joined/measure_ast007_age_band_rate.csv
--input-list output/joined/measure_ast007_care_home_rate.csv
--input-list output/joined/measure_ast007_ethnicity_rate.csv
--input-list output/joined/measure_ast007_imd_rate.csv
--input-list output/joined/measure_ast007_learning_disability_rate.csv
--input-list output/joined/measure_ast007_region_rate.csv
--input-list output/joined/measure_ast007_sex_rate.csv
--output-dir output/joined/summary
--output-name "measure_ast007.csv"
needs: [generate_measures_ast007]
outputs:
moderately_sensitive:
# Only output the single summary file
measure_csv: output/joined/summary/measure_ast007.csv
# calculate_rates_ast007:
# run: python:latest python analysis/rate_calculations_ast007.py
# needs: [join_ethnicity_ast007, generate_measures_ast007]
# outputs:
# moderately_sensitive:
# tables: output/rate_table_*.csv
# plots: output/plot_*.png
# decile_chart: output/decile_chart.png
#############################
# Plotting
#############################
generate_qof_deciles_charts:
run: >
deciles-charts:v0.0.15
--input-files output/joined/measure_*_practice_rate.csv
--output-dir output/joined
config:
show_outer_percentiles: false
tables:
output: true
charts:
output: true
needs: [generate_measures_ast007]
outputs:
moderately_sensitive:
cohort: output/joined/deciles_*_*.*
generate_qof_groups:
run: >
python:latest python analysis/group_charts.py
--input-files output/joined/measure_ast007_*.csv
--output-dir output/joined
--date-lines "2019-03-31" "2020-03-31" "2021-03-31"
--scale "percentage"
needs: [generate_measures_ast007]
outputs:
moderately_sensitive:
cohort: output/joined/group_chart_*.png
generate_all_breakdowns:
run: >
python:latest python analysis/panel_plots.py
--input-file output/joined/summary/measure_ast007.csv
--measures-pattern "*_rate"
--output-dir output/joined/summary
--output-name "asthma_ast007_by_demographic_group"
--date-lines "2019-03-31" "2020-03-31" "2021-03-31"
--scale "percentage"
needs: [join_measures_ast007]
outputs:
moderately_sensitive:
cohort: output/joined/summary/asthma_ast007_by_demographic_group.png
generate_notebook_ast007:
run: jupyter:latest jupyter nbconvert /workspace/analysis/Table1_notebook.ipynb --execute --to html --output-dir=/workspace/output --ExecutePreprocessor.timeout=86400 --no-input
needs: [join_measures_ast007]
outputs:
moderately_sensitive:
notebook: output/Table1_notebook.html
# Testing Asthma variables
# generate_study_population_ast007_test_variables:
# run: cohortextractor:latest generate_cohort
# --study-definition study_definition_ast007_test_variables
# --index-date-range "2018-03-01 to 2020-03-31 by month"
# --output-dir=output/test
# outputs:
# highly_sensitive:
# cohort: output/test/input_ast007_test*.csv
# generate_measures_ast007_test:
# run: cohortextractor:latest generate_measures
# --study-definition study_definition_ast007_test_variables
# --output-dir=output/test
# needs: [generate_study_population_ast007_test_variables]
# outputs:
# moderately_sensitive:
# measure_csv: output/test/measure_*_rate.csv
# Check with separate analysis script
# check_data:
# run: r:latest analysis/indicator_dates_testing.py
# outputs:
# moderately_sensitive:
# table_csv: output/test/test.csv