Skip to content

Job request: 18465

Organisation:
University of Manchester
Workspace:
main_pregnancy_tx_pathways
ID:
dshyreyfhntcbwsp

This page shows the technical details of what happened when the authorised researcher Dexter Hayes requested one or more actions to be run against real patient data in the project, within a secure environment.

By cross-referencing the list of jobs with the pipeline section below, you can infer what security level various outputs were written to. Researchers can never directly view outputs marked as highly_sensitive ; they can only request that code runs against them. Outputs marked as moderately_sensitive can be viewed by an approved researcher by logging into a highly secure environment. Only outputs marked as moderately_sensitive can be requested for release to the public, via a controlled output review service.

Jobs

Pipeline

Show project.yaml
version: '3.0'

expectations:
  population_size: 1000

actions:

  # this is for number of matches
  generate_study_population:
    run: cohortextractor:latest generate_cohort --study-definition study_definition 
    outputs:
      highly_sensitive:
        cohort: output/input.csv

  # this is to generate a date file for each month
  # generate_study_population_monthly:
  #   run: cohortextractor:latest generate_cohort 
  #     --study-definition study_definition_monthly 
  #     --index-date-range "2019-01-01 to today by month"
  #     --output-dir=output 
  #     --output-format=csv.gz 
  #   outputs:
  #     highly_sensitive:
  #       cohort: output/input_*.csv.gz

  generate_study_population_measures:
    run: cohortextractor:latest generate_cohort 
      --study-definition study_definition_measures 
      --index-date-range "2019-01-01 to today by month" --skip-existing 
      --output-dir=output/measures 
      --output-format=csv.gz 
      --param num_days=84 
    outputs:
      highly_sensitive:
        cohort: output/measures/input_*.csv.gz

## num_days added to study def measures, converted to integer,
## and added to pn_8wk_present variable in study defs

  generate_12wk_cohort:
    run: cohortextractor:latest generate_cohort 
      --study-definition study_definition_measures
      --index-date-range "2019-01-01 to today by month" --skip-existing 
      --output-format csv.gz
      --param num_days=84
      --output-dir=output/pn12wk
    outputs:
      highly_sensitive:
        cohort: output/pn12wk/input_*.csv.gz
  
  generate_8wk_cohort:
    run: cohortextractor:latest generate_cohort
      --study-definition study_definition_measures 
      --index-date-range "2019-01-01 to today by month" --skip-existing 
      --output-format csv.gz
      --param num_days=56
      --output-dir=output/pn8wk
    outputs:
      highly_sensitive:
        cohort: output/pn8wk/input_*.csv.gz

  generate_6wk_cohort:
    run: cohortextractor:latest generate_cohort 
      --study-definition study_definition_measures
      --index-date-range "2019-01-01 to today by month" --skip-existing 
      --output-format csv.gz
      --param num_days=42
      --output-dir=output/pn6wk
    outputs:
      highly_sensitive:
        cohort: output/pn6wk/input_*.csv.gz

  ## generate measures for each param (above)
  generate_measures:
    run: cohortextractor:latest generate_measures --study-definition study_definition_measures --skip-existing --output-dir=output/measures --param num_days=84
    needs: [generate_study_population_measures]
    outputs:
      moderately_sensitive:
        measure_csv: output/measures/measure_*.csv

  generate_measures_12wk:
    run: cohortextractor:latest generate_measures 
      --study-definition study_definition_measures 
      --skip-existing 
      --output-dir=output/pn12wk
      --param num_days=84
    needs: [generate_12wk_cohort]
    outputs:
      moderately_sensitive:
        measure_csv: output/pn12wk/measure_*.csv

  generate_measures_8wk:
    run: cohortextractor:latest generate_measures 
      --study-definition study_definition_measures 
      --skip-existing 
      --output-dir=output/pn8wk
      --param num_days=56
    needs: [generate_8wk_cohort]
    outputs:
      moderately_sensitive:
        measure_csv: output/pn8wk/measure*.csv

  generate_measures_6wk:
    run: cohortextractor:latest generate_measures 
      --study-definition study_definition_measures 
      --skip-existing 
      --output-dir=output/pn6wk
      --param num_days=42
    needs: [generate_6wk_cohort]
    outputs:
      moderately_sensitive:
        measure_csv: output/pn6wk/measure_*.csv

  ## code frequencies
  describe_del_code_freq:
    run: r:latest analysis/del_code_frequency.R
    needs: [generate_study_population]
    outputs:
      moderately_sensitive:
        hist1: output/del_code_histogram.jpeg
        table1: output/table_del_codes.csv

  describe_del_code_freq_with_names:
    run: r:latest analysis/del_code_frequency_with_names.R
    needs: [generate_study_population, describe_del_code_freq]
    outputs:
      moderately_sensitive:
        table1: output/table_del_codes_with_names.csv

  describe_del_code_freq_with_names_reduced:
    run: r:latest analysis/del_code_frequency_with_names_reduced.R
    needs: [generate_study_population, describe_del_code_freq_with_names]
    outputs:
     moderately_sensitive:
        table1: output/table_del_codes_with_names_reduced.csv
        
  describe_pn_code_freq:
    run: r:latest analysis/pn_code_frequency.R
    needs: [generate_study_population]
    outputs:
      moderately_sensitive:
        table1: output/table_pn_codes.csv

  describe_pn_code_freq_with_names:
    run: r:latest analysis/pn_code_frequency_with_names.R
    needs: [generate_study_population, describe_pn_code_freq]
    outputs:
      moderately_sensitive:
        table1: output/table_pn_codes_with_names.csv   

  describe_pn_code_freq_with_names_reduced:
    run: r:latest analysis/pn_code_frequency_with_names_reduced.R
    needs: [generate_study_population, describe_pn_code_freq_with_names]
    outputs:
     moderately_sensitive:
        table1: output/table_pn_codes_with_names_reduced.csv   

  ## rate plots - overall using old code
  ## hashed out below to check this works as wasnt running on server
  describe_pn_rate_plots:
    run: r:latest analysis/pn_check_using_measures_overall.R
    needs: [generate_study_population_measures, generate_measures]
    outputs:
      moderately_sensitive:
        plot1: output/monthly_pn_rate_measures_overall.jpeg
  
  describe_pn_rate_plots_8wk:
    run: r:latest analysis/pn_check_using_measures_8wk.R
    needs: [generate_8wk_cohort, generate_measures_8wk]
    outputs:
      moderately_sensitive:
        plot1: output/monthly_pn_rate_measures_8wk.jpeg 

  ## rate plots by category
  describe_pn_rate_plots_by_age_cat:
    run: r:latest analysis/pn_check_using_measures_by_age_cat.R
    needs: [generate_study_population_measures, generate_measures]
    outputs:
      moderately_sensitive:
        plot2: output/monthly_pn_rate_measures8wkcode_by_age_cat.jpeg

  #describe_pn_rate_plots_by_age_cat_12/8/6wk etc?

  describe_pn_rate_plots_by_ethnicity:
    run: r:latest analysis/pn_check_using_measures_by_ethnicity.R
    needs: [generate_study_population_measures, generate_measures]
    outputs:
      moderately_sensitive:
        plot3: output/monthly_pn_rate_measures8wkcode_by_ethnicity.jpeg

  describe_pn_rate_plots_by_imd:
    run: r:latest analysis/pn_check_using_measures_by_imd.R
    needs: [generate_study_population_measures, generate_measures]
    outputs:
      moderately_sensitive:
        plot4: output/monthly_pn_rate_measures8wkcode_by_imd.jpeg
 
  describe_pn_rate_plots_by_practice:
    run: r:latest analysis/pn_check_using_measures_by_practice.R
    needs: [generate_study_population_measures, generate_measures]
    outputs:
      moderately_sensitive:
        plot5: output/monthly_pn_rate_measures8wkcode_by_practice.jpeg
  
  describe_pn_rate_plots_by_practice_8wk:
    run: r:latest analysis/pn_check_using_measures_by_practice_8wk.R
    needs: [generate_8wk_cohort, generate_measures_8wk]
    outputs:
      moderately_sensitive:
        plot5: output/monthly_pn_rate_measures8wkcode_by_practice_8wk.jpeg

  describe_pn_rate_plots_by_region:
    run: r:latest analysis/pn_check_using_measures_by_region.R
    needs: [generate_study_population_measures, generate_measures]
    outputs:
      moderately_sensitive:
        plot6: output/monthly_pn_rate_measures8wkcode_by_region.jpeg


### Generating baseline tables ### 
#################################
  # describe_baseline_table:
  #   run: r:latest analysis/baseline_table.R
  #   needs: [generate_study_population_measures, generate_measures]
  #   outputs:
  #     moderately_sensitive:
  #       table_overall: output/blt_overall.csv   
  #       table_before: output/blt_before.csv 
  #       table_after: output/blt_after.csv 
  #       table_overall_counts: output/overall_counts.csv
  #       table_counts_before: output/overall_counts_before.csv
  #       table_counts_after: output/overall_counts_after.csv 

  describe_baseline_table_12wk_cohort:
    run: r:latest analysis/baseline_table_12wk.R
    needs: [generate_12wk_cohort]
    outputs:
      moderately_sensitive:
        table_overall: output/blt_overall_12wk.csv   
        table_before: output/blt_before_12wk.csv 
        table_after: output/blt_after_12wk.csv 
        table_overall_counts: output/overall_counts_12wk.csv
        table_counts_before: output/overall_counts_before_12wk.csv
        table_counts_after: output/overall_counts_after_12wk.csv 

  describe_baseline_table_8wk_cohort:
    run: r:latest analysis/baseline_table_8wk.R
    needs: [generate_8wk_cohort]
    outputs:
      moderately_sensitive:
        table_overall: output/blt_overall_8wk.csv   
        table_before: output/blt_before_8wk.csv 
        table_after: output/blt_after_8wk.csv 
        table_overall_counts: output/overall_counts_8wk.csv
        table_counts_before: output/overall_counts_before_8wk.csv
        table_counts_after: output/overall_counts_after_8wk.csv 

  describe_baseline_table_6wk_cohort:
    run: r:latest analysis/baseline_table_6wk.R
    needs: [generate_6wk_cohort]
    outputs:
      moderately_sensitive:
        table_overall: output/blt_overall_6wk.csv   
        table_before: output/blt_before_6wk.csv 
        table_after: output/blt_after_6wk.csv 
        table_overall_counts: output/overall_counts_6wk.csv
        table_counts_before: output/overall_counts_before_6wk.csv
        table_counts_after: output/overall_counts_after_6wk.csv

Timeline

  • Created:

  • Started:

  • Finished:

  • Runtime: 01:56:08

These timestamps are generated and stored using the UTC timezone on the TPP backend.

Job information

Status
Succeeded
Backend
TPP
Requested by
Dexter Hayes
Branch
main
Force run dependencies
No
Git commit hash
0a4c63d
Requested actions
  • describe_baseline_table_8wk_cohort
  • describe_baseline_table_6wk_cohort

Code comparison

Compare the code used in this Job Request