Overview of pipeline from raw data to models.
Goal is to produce a table in the format:
outcome | study | arm | observations | observation info | study-level descriptors |
---|---|---|---|---|---|
outcome | unique identifier for study | unique identifier for arm | mean, sd, counts, etc. | timepoint, scale, etc. | condition, study design (parallel/crossover), antyhing we need to filter by, subgroups, etc. |
These data will contain everything that is included and excluded from the model, so that we may report on the systematic review overall, as well as the model results.
Column names need to be interpretable by everyone in the group, so that others can explore the data.
In some cases, there is a column or columns that uniquely identify/provide the required data. In other, more challenging cases, we need to extract information from a substring of the observation header (column header).
tar_read(e_variables)
Variable | Description | Covidence |
---|---|---|
model | ||
|
Unique identifier for study; comments contains title, study identifier is first author and year |
|
|
Name of intervention drug: e.g., Desvenlafaxin |
|
filter | ||
|
Short-term follow up, baseline, long-term follow up, post-intervention; atm the other time points are filtered out and just postintervention is going through to the anlaysis | obs header |
|
We searched the column headers for names of scales (such as vas) | obs header |
|
Type of intervention: e.g., antidepressant, placebo, CBT |
|
|
crossover or parallel; for now we filter parallel not crossover |
|
subgroup | ||
|
Condition of pain in the study, such as lower back pain. NB condition can be tagged in multiple ways, see condition classifier gs. In particular prioritise general_grouping as the condition variable. temporomandibular disorder |
|
|
Class of antidepressant: e.g. SNRI; this variable only applies to antidepressant |
|
|
Primary aim of the original study: e.g., pain, mood, etc. |
|
Variable column indicates what the cleaned output data column headers are, the Covidence column indicates what the column is labelled as in the raw export. |
# all current raw files read into the pipeline
tar_manifest(names = starts_with("r_"), fields = c(name, command)) %>%
gt() %>% hpp_tab(vertical_divider = "name")
Loading required package: dontpanic
name | command |
---|---|
r_h_outcome_withdrawal | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Withdrawal.csv"))) |
r_h_outcome_physical | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Physical function.csv"))) |
r_h_outcome_adverse | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Adverse Events.csv"))) |
r_h_outcome_mood | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Mood.csv"), \n )) |
r_h_outcome_pain_int | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Pain intensity.csv"))) |
r_h_outcome_pain_sub | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Substantial pain relief.csv"))) |
r_h_outcome_qol | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Quality of life.csv"))) |
r_h_outcome_sleep | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Sleep.csv"))) |
r_scales | read_rds("data/scales-2021-07-14_00:04:08.rds") |
r_covidence | suppressWarnings(suppressMessages(read_csv("data/review_91309_extracted_data_csv_20210712234312.csv"))) |
r_variables | read_csv("data/variables-2021-07-12_16:37:56.csv") |
r_condition | read_csv("data/conditions-2021-07-12_16:37:56.csv") |
r_h_outcome_pain_mod | suppressWarnings(suppressMessages(read_csv("data/outcomes-2021-07-12/Moderate pain relief.csv"))) |
r_h_outcome_obs | list(mood = r_h_outcome_mood, pain_int = r_h_outcome_pain_int, \n adverse = r_h_outcome_adverse, physical = r_h_outcome_physical, \n qol = r_h_outcome_qol, sleep = r_h_outcome_sleep, pain_mod = w_h_outcome_pain_mod, \n withdrawal = r_h_outcome_withdrawal, pain_sub = r_h_outcome_pain_sub) |
Observations are drawn from the raw files provided by Hollie, and study-level information from the raw Covidence export, as well as column headers in the observations.
To do this we will join by matching the study and arm columns in two tables.
tar_read(p_metapar)
# A tibble: 1 × 7
study arm type design condition class main_aim
<chr> <chr> <chr> <chr> <chr> <chr> <chr>
1 unique st… unique a… Interve… Group Chronic pai… Interv… Main aim …
With outcome-level observational data:
tar_read(p_obs)
# A tibble: 1 × 5
outcome study arm obs obs_info
<chr> <chr> <chr> <chr> <chr>
1 mood, pai… unique st… unique … columns with m… "information extract…
We’ll construct a dataframe to run models over that contains all combinations of unique subgroups we wish to run network meta-analyses over.
Ideally this will be implemented in a shiny app.