Skip to content

Job request: 8761

Organisation:
NHSE/I
Workspace:
nhs_at_home_main
ID:
fcdravkawttcfazf

This page shows the technical details of what happened when authorised researcher Alexandra Benson 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
version: "3.0"

expectations:
  population_size: 1000

actions:
  generate_study_definition_static:
    run: cohortextractor:latest generate_cohort --study-definition study_definition_static

    outputs:
      highly_sensitive:
        cohort: output/input_static.csv

  # Oximetry
  generate_study_population_oximetry:
    run: cohortextractor:latest generate_cohort --study-definition study_definition_oximetry --index-date-range "2019-04-01 to 2022-05-12 by week"
    outputs:
      highly_sensitive:
        oximetry_cohort: output/input_oximetry*.csv

  join_cohorts_oximetry:
    run: cohort-joiner:v0.0.30 --lhs output/input_oximetry*.csv --rhs output/input_static.csv --output-dir output/completed
    needs:
      [generate_study_population_oximetry, generate_study_definition_static]
    outputs:
      highly_sensitive:
        cohort: output/completed/input_oximetry*.csv

  # BP
  generate_study_population_bp:
    run: cohortextractor:latest generate_cohort --study-definition study_definition_bp --index-date-range "2019-04-01 to 2022-05-12 by week"
    outputs:
      highly_sensitive:
        bp_cohort: output/input_bp*.csv

  join_cohorts_bp:
    run: cohort-joiner:v0.0.30 --lhs output/input_bp*.csv --rhs output/input_static.csv --output-dir output/completed
    needs: [generate_study_population_bp, generate_study_definition_static]
    outputs:
      highly_sensitive:
        cohort: output/completed/input_bp*.csv

  # Proactive
  generate_study_population_proactive:
    run: cohortextractor:latest generate_cohort --study-definition study_definition_proactive --index-date-range "2019-04-01 to 2022-05-12 by week"
    outputs:
      highly_sensitive:
        proactive_cohort: output/input_proactive*.csv

  join_cohorts_proactive:
    run: cohort-joiner:v0.0.30 --lhs output/input_proactive*.csv --rhs output/input_static.csv --output-dir output/completed
    needs:
      [generate_study_population_proactive, generate_study_definition_static]
    outputs:
      highly_sensitive:
        cohort: output/completed/input_proactive*.csv

  # Analysis
  generate_oximetry_timeseries:
    run: python:latest python analysis/analysis_oximetry_timeseries.py
    needs: [join_cohorts_oximetry]
    outputs:
      moderately_sensitive:
        oximetry_table_counts: output/oximetry_table_counts.csv
        oximetry_plot_timeseries: output/oximetry_plot_timeseries.png

  generate_oximetry_regional_timeseries:
    run: python:latest python analysis/analysis_oximetry_region.py
    needs: [join_cohorts_oximetry]
    outputs:
      moderately_sensitive:
        oximetry_table_counts_region: output/oximetry_table_counts_*.csv
        oximetry_plot_timeseries_region: output/oximetry_plot_timeseries_region_*.png

  generate_oximetry_breakdowns:
    run: python:latest python analysis/analysis_oximetry_breakdowns.py
    needs: [join_cohorts_oximetry]
    outputs:
      moderately_sensitive:
        oximetry_table_breakdowns: output/oximetry_table_code_*.csv
        oximetry_plot_breakdowns: output/oximetry_plot_code_*.png

  generate_oximetry_codes_analysis:
    run: python:latest python analysis/analysis_oximetry_codes.py
    needs: [join_cohorts_oximetry]
    outputs:
      moderately_sensitive:
        oximetry_table_code_counts: output/oximetry_table_code_counts_*.csv
        oximetry_table_code_combinations: output/oximetry_table_code_combinations.csv

  generate_bp_timeseries:
    run: python:latest python analysis/analysis_bp_timeseries.py
    needs: [join_cohorts_bp]
    outputs:
      moderately_sensitive:
        bp_table_counts: output/bp_table_counts.csv
        bp_plot_timeseries: output/bp_plot_timeseries.png

  generate_bp_regional_timeseries:
    run: python:latest python analysis/analysis_bp_region.py
    needs: [join_cohorts_bp]
    outputs:
      moderately_sensitive:
        bp_table_counts_region: output/bp_table_counts_*.csv
        bp_plot_timeseries_region: output/bp_plot_timeseries_region_*.png

  generate_bp_breakdowns:
    run: python:latest python analysis/analysis_bp_breakdowns.py
    needs: [join_cohorts_bp]
    outputs:
      moderately_sensitive:
        bp_table_breakdowns: output/bp_table_code_*.csv
        bp_plot_breakdowns: output/bp_plot_code_*.png

  generate_bp_codes_analysis:
    run: python:latest python analysis/analysis_bp_codes.py
    needs: [join_cohorts_bp]
    outputs:
      moderately_sensitive:
        bp_table_code_counts: output/bp_table_code_counts_*.csv
        bp_table_code_combinations: output/bp_table_code_combinations.csv

  generate_proactive_timeseries:
    run: python:latest python analysis/analysis_proactive_timeseries.py
    needs: [join_cohorts_proactive]
    outputs:
      moderately_sensitive:
        proactive_table_counts: output/proactive_table_counts.csv
        proactive_plot_timeseries: output/proactive_plot_timeseries.png

  generate_proactive_regional_timeseries:
    run: python:latest python analysis/analysis_proactive_region.py
    needs: [join_cohorts_proactive]
    outputs:
      moderately_sensitive:
        proactive_table_counts_region: output/proactive_table_counts_*.csv
        proactive_plot_timeseries_region: output/proactive_plot_timeseries_region_*.png

  generate_proactive_breakdowns:
    run: python:latest python analysis/analysis_proactive_breakdowns.py
    needs: [join_cohorts_proactive]
    outputs:
      moderately_sensitive:
        proactive_table_breakdowns: output/proactive_table_code_*.csv
        proactive_plot_breakdowns: output/proactive_plot_code_*.png

  generate_proactive_codes_analysis:
    run: python:latest python analysis/analysis_proactive_codes.py
    needs: [join_cohorts_proactive]
    outputs:
      moderately_sensitive:
        proactive_table_code_counts: output/proactive_table_code_counts_*.csv

Timeline

  • Created:

  • Started:

  • Finished:

  • Runtime: 00:26:47

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

Job information

Status
Succeeded
Backend
TPP
Workspace
nhs_at_home_main
Requested by
Alexandra Benson
Branch
main
Force run dependencies
No
Git commit hash
6931298
Requested actions
  • generate_oximetry_breakdowns
  • generate_bp_breakdowns
  • generate_proactive_breakdowns

Code comparison

Compare the code used in this Job Request