generated from opensafely/research-template
/
project.yaml
109 lines (89 loc) · 3.5 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
################################################################################
#
# Description: This script defines the project pipeline - it specifys the
# execution orders for all the code in this repo using a series of
# actions.
#
# Author(s): M Green
# Date last updated: 15/02/2022
#
################################################################################
version: '3.0'
expectations:
population_size: 100000
actions:
# Extract data ----
extract_data:
run: cohortextractor:latest generate_cohort --study-definition study_definition --output-dir=output/data --output-format=csv.gz
outputs:
highly_sensitive:
cohort: output/data/input.csv.gz
extract_stp_data:
run: cohortextractor:latest generate_cohort --study-definition study_definition_stp --output-dir=output/data --output-format=csv.gz
outputs:
highly_sensitive:
cohort: output/data/input_stp.csv.gz
extract_high_risk_data:
run: cohortextractor:latest generate_cohort --study-definition study_definition_high_risk --output-dir=output/data --output-format=csv.gz
outputs:
highly_sensitive:
cohort: output/data/input_high_risk.csv.gz
# Data processing ----
data_process:
run: r:latest analysis/process/process_data.R
needs: [extract_data]
outputs:
highly_sensitive:
data: output/data/data_processed*.rds
data_process_high_risk:
run: r:latest analysis/process/process_data_high_risk.R
needs: [extract_high_risk_data]
outputs:
highly_sensitive:
data: output/data/data_processed_high_risk.rds
moderately_sensitive:
csv: output/data_properties/n_high_risk.csv
# Data summaries ----
data_properties:
run: r:latest analysis/descriptive/data_properties.R output/data/data_processed.rds output/data_properties
needs: [data_process]
outputs:
moderately_sensitive:
cohort: output/data_properties/data_processed*.txt
excl_crit_checks:
run: r:latest analysis/descriptive/excl_crit_checks.R
needs: [data_process]
outputs:
moderately_sensitive:
csv: output/data_properties/excl_crit.csv
# Sensitivity anslysis ----
sa_symptomatic_test:
run: r:latest -e 'rmarkdown::render("analysis/descriptive/sa_symptomatic_test.Rmd", knit_root_dir = "/workspace", output_dir="/workspace/output/coverage")'
needs: [data_process]
outputs:
moderately_sensitive:
html: output/coverage/sa_symptomatic_test.html
# Report ----
report_data:
run: r:latest analysis/descriptive/coverage_report_data.R
needs: [data_process]
outputs:
moderately_sensitive:
redacted_tables: output/coverage/table_*.csv
unredacted_tables: output/coverage/for-checks/table_*.csv
# Variation by STP ----
stp_report:
run: r:latest -e 'rmarkdown::render("analysis/descriptive/mabs-and-avs-by-stp.Rmd", knit_root_dir = "/workspace", output_dir="/workspace/output/variation")'
needs: [data_process, extract_stp_data]
outputs:
moderately_sensitive:
html: output/variation/mabs-and-avs-by-stp.html
figures: output/variation/figure_*.csv
csvs: output/variation/table_*.csv
# Obs vs exp ----
obs_vs_exp_report:
run: r:latest -e 'rmarkdown::render("analysis/descriptive/obs-vs-exp.Rmd", knit_root_dir = "/workspace", output_dir="/workspace/output/variation")'
needs: [data_process]
outputs:
moderately_sensitive:
html: output/variation/obs-vs-exp.html