Skip to content

Latest commit

 

History

History
96 lines (65 loc) · 8.93 KB

File metadata and controls

96 lines (65 loc) · 8.93 KB
graph LR
    Workflow_Orchestration_Control["Workflow Orchestration & Control"]
    External_Tool_Execution["External Tool Execution"]
    Variant_Data_Processing["Variant Data Processing"]
    Machine_Learning_Output["Machine Learning & Output"]
    Variant_Post_processing["Variant Post-processing"]
    Workflow_Orchestration_Control -- "Initiates & Directs" --> External_Tool_Execution
    Workflow_Orchestration_Control -- "Orchestrates" --> Variant_Data_Processing
    Workflow_Orchestration_Control -- "Orchestrates" --> Machine_Learning_Output
    External_Tool_Execution -- "Outputs Raw Data To" --> Variant_Data_Processing
    External_Tool_Execution -- "Outputs Raw VCFs To" --> Variant_Post_processing
    Variant_Data_Processing -- "Receives Input From" --> External_Tool_Execution
    Variant_Data_Processing -- "Receives Processed VCFs From" --> Variant_Post_processing
    Variant_Data_Processing -- "Provides Data To" --> Machine_Learning_Output
    Machine_Learning_Output -- "Receives Data From" --> Variant_Data_Processing
    Machine_Learning_Output -- "Outputs Final VCFs To" --> Workflow_Orchestration_Control
    Variant_Post_processing -- "Receives Raw VCFs From" --> External_Tool_Execution
    Variant_Post_processing -- "Provides Processed VCFs To" --> Variant_Data_Processing
    click External_Tool_Execution href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/somaticseq/External_Tool_Execution.md" "Details"
    click Variant_Data_Processing href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/somaticseq/Variant_Data_Processing.md" "Details"
    click Machine_Learning_Output href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/somaticseq/Machine_Learning_Output.md" "Details"
    click Variant_Post_processing href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/somaticseq/Variant_Post_processing.md" "Details"
Loading

CodeBoardingDemoContact

Details

The somaticseq project is designed as a modular pipeline for somatic variant calling and classification. The architecture can be abstracted into five core components, each with distinct responsibilities and clear interactions, facilitating a robust and scalable workflow.

Workflow Orchestration & Control

This component serves as the central command unit, managing the entire SomaticSeq pipeline's execution flow. It handles both single-sample and paired-sample modes, orchestrates parallel processing across genomic regions, and coordinates the sequential and parallel execution of all downstream components.

Related Classes/Methods:

External Tool Execution [Expand]

This component is responsible for generating and executing scripts that run various external bioinformatics tools (e.g., BWA for alignment, MuTect2, VarDict for somatic calling) within containerized environments (Docker/Singularity). It produces the initial raw alignment (BAM) and variant (VCF) files.

Related Classes/Methods:

Variant Data Processing [Expand]

This component handles the intricate process of preparing variant data for machine learning. It includes parsing various genomic file formats, extracting detailed sequencing read-level information, calculating a comprehensive set of quantitative features from BAM alignment files and genomic context, and transforming VCF files into a feature-rich tab-separated value (TSV) format.

Related Classes/Methods:

Machine Learning & Output [Expand]

This component embodies the core machine learning functionality. It implements the XGBoost model for both training (building) and predicting (classifying) somatic variants using the feature-rich TSV data. Subsequently, it converts the classified TSV results, including prediction scores and filtering information, back into the standard VCF format.

Related Classes/Methods:

Variant Post-processing [Expand]

This component is responsible for the initial processing, combining, and manipulation of VCF outputs generated by various external somatic variant callers. It standardizes their formats, annotates variants with caller-specific information, and provides utilities for VCF manipulation such as intersection with BED regions, splitting complex variants, sorting, and tallying variants from multiple VCFs.

Related Classes/Methods: