Skip to content

Job request: 20814

Organisation:
Bennett Institute
Workspace:
isaric-main
ID:
jvyg6ozgsumg3gla

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

By cross-referencing the indicated Requested Actions with the Pipeline section below, you can infer what security level various outputs were written to. Outputs marked as highly_sensitive can never be viewed directly by a researcher; 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
################################################################################
#
# 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: 07/08/2023
#
################################################################################

version: '3.0'

expectations:
  population_size: 1000

actions:

  # Extract isaric data (ehrQL) ----
  extract_first_isaric_admission:
    run: >
      ehrql:v0 generate-dataset analysis/dataset_definition_isaric.py
      --output 'output/admissions/isaric_admission1.csv.gz'
    outputs:
      highly_sensitive:
        csv: output/admissions/isaric_admission1.csv.gz


  # Extract sus data (ehrQL)----
  extract_first_sus_admission_methodA_ehrQL:
    run: >
      ehrql:v0
        generate-dataset analysis/dataset_definition_sus.py
        --output output/admissions/sus_methodA_admission1_ehrQL.csv.gz
        --
        --admission_method A
    outputs:
      highly_sensitive:
        cohort: output/admissions/sus_methodA_admission1_ehrQL.csv.gz

  extract_first_sus_admission_methodB_ehrQL:
    run: >
      ehrql:v0
        generate-dataset analysis/dataset_definition_sus.py
        --output output/admissions/sus_methodB_admission1_ehrQL.csv.gz
        --
        --admission_method B
    outputs:
      highly_sensitive:
        cohort: output/admissions/sus_methodB_admission1_ehrQL.csv.gz

  extract_first_sus_admission_methodC_ehrQL:
    run: >
      ehrql:v0
        generate-dataset analysis/dataset_definition_sus.py
        --output output/admissions/sus_methodC_admission1_ehrQL.csv.gz
        --
        --admission_method C
    outputs:
      highly_sensitive:
        cohort: output/admissions/sus_methodC_admission1_ehrQL.csv.gz


  # Extract sus data (cohortextractor)----
  extract_sus_methodA_admission1_cohortextractor:
    run: >
      cohortextractor:latest generate_cohort
      --study-definition study_definition_sus
      --output-file output/admissions/sus_methodA_admission1_cohortextractor.csv.gz
      --param admission_number=1
      --param admission_method=A
    outputs:
      highly_sensitive:
        csv: output/admissions/sus_methodA_admission1_cohortextractor.csv.gz

  extract_sus_methodB_admission1_cohortextractor:
    run: >
      cohortextractor:latest generate_cohort
      --study-definition study_definition_sus
      --output-file output/admissions/sus_methodB_admission1_cohortextractor.csv.gz
      --param admission_number=1
      --param admission_method=B
    outputs:
      highly_sensitive:
        csv: output/admissions/sus_methodB_admission1_cohortextractor.csv.gz

  extract_sus_methodC_admission1_cohortextractor:
    run: >
      cohortextractor:latest generate_cohort
      --study-definition study_definition_sus
      --output-file output/admissions/sus_methodC_admission1_cohortextractor.csv.gz
      --param admission_number=1
      --param admission_method=C
    outputs:
      highly_sensitive:
        csv: output/admissions/sus_methodC_admission1_cohortextractor.csv.gz


  # Data properties ----
  data_properties:
    run: >
      r:latest
        analysis/rcode/descriptive/data_properties.R
        output/admissions/isaric_admission1.csv.gz
        output/admissions/sus_methodA_admission1_cohortextractor.csv.gz
        output/admissions/sus_methodA_admission1_ehrQL.csv.gz
        output/data_properties
    needs: [extract_first_isaric_admission, extract_sus_methodA_admission1_cohortextractor, extract_first_sus_admission_methodA_ehrQL]
    outputs:
      moderately_sensitive:
        txt1: output/data_properties/*.txt


  # ehrQL vs cohortextractor ----
  ehrQL_vs_cohortextractor_comparison:
    run: >
      r:latest
        analysis/rcode/translation/ehrQL_vs_cohortextractor_comparison.R
    needs: [extract_first_sus_admission_methodA_ehrQL, extract_first_sus_admission_methodB_ehrQL, extract_first_sus_admission_methodC_ehrQL, extract_sus_methodA_admission1_cohortextractor, extract_sus_methodB_admission1_cohortextractor, extract_sus_methodC_admission1_cohortextractor]
    outputs:
      moderately_sensitive:
        csv: output/translation/ehrQL_vs_cohortextractor_comparison.csv


  # Data processing ----
  data_process:
    run: >
      r:latest
        analysis/rcode/process/process_data.R
    needs: [extract_first_isaric_admission, extract_first_sus_admission_methodA_ehrQL, extract_first_sus_admission_methodB_ehrQL, extract_first_sus_admission_methodC_ehrQL]
    outputs:
      highly_sensitive:
        rds: output/admissions/processed_*.rds

  # Resuts for preliminary report ----
  validation_report_data:
    run: >
      r:latest
        analysis/rcode/validation/validation_report_data.R
    needs: [data_process]
    outputs:
      moderately_sensitive:
        redacted_tables: output/validation/table_*.csv
  #      unredacted_tables: output/validation/for-checks/table_*.csv

  # # Preliminary report ----
  # validation_report:
  #   run: r:latest -e 'rmarkdown::render("analysis/rcode/validation/validation_report.Rmd", knit_root_dir = "/workspace", output_dir="/workspace/output/reports")'
  #   needs: [data_process]
  #   outputs:
  #     moderately_sensitive:
  #       html: output/reports/validation_report.html

Timeline

  • Created:

  • Started:

  • Finished:

  • Runtime: 00:01:01

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

Job information

Status
Succeeded
Backend
TPP
Workspace
isaric-main
Requested by
Millie Green
Branch
main
Force run dependencies
No
Git commit hash
4ed4802
Requested actions
  • validation_report_data

Code comparison

Compare the code used in this Job Request