Skip to content

Commit

Permalink
chore: Change Oncoliner to ONCOLINER
Browse files Browse the repository at this point in the history
  • Loading branch information
Rapsssito committed Oct 17, 2023
1 parent 99972af commit 728dc3a
Show file tree
Hide file tree
Showing 14 changed files with 42 additions and 42 deletions.
18 changes: 9 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Oncoliner<!-- omit in toc -->
# ONCOLINER<!-- omit in toc -->

![Oncoliner logo](/docs/images/ONCOLINER_LOGO_COLOR.png)
![ONCOLINER logo](/docs/images/ONCOLINER_LOGO_COLOR.png)

WIP

Expand All @@ -18,7 +18,7 @@ WIP

## Installation

It is highly recommended to use Oncoliner with Docker or Singularity (we recommend using [`singularity-ce`](https://github.com/sylabs/singularity) with a version higher than 3.9.0). However, you may also install it locally.
It is highly recommended to use ONCOLINER with Docker or Singularity (we recommend using [`singularity-ce`](https://github.com/sylabs/singularity) with a version higher than 3.9.0). However, you may also install it locally.

### Docker / Singularity

Expand All @@ -34,11 +34,11 @@ singularity build oncoliner.sif singularity.def

### Local installation

You may also install Oncoliner locally using the same instructions as provided in the [Dockerfile](/Dockerfile).
You may also install ONCOLINER locally using the same instructions as provided in the [Dockerfile](/Dockerfile).

## Usage

Assuming you have a singularity image called `oncoliner.sif`, you can run Oncoliner as follows:
Assuming you have a singularity image called `oncoliner.sif`, you can run ONCOLINER as follows:

```bash
singularity exec oncoliner.sif oncoliner/main.py -c config.tsv -pf pipelines_1_folder pipelines_2_folder -o output_folder --max-processes 48
Expand All @@ -48,7 +48,7 @@ singularity exec oncoliner.sif oncoliner/main.py -c config.tsv -pf pipelines_1_f
```
usage: main.py [-h] -c CONFIG -pf PIPELINES_FOLDERS [PIPELINES_FOLDERS ...] -o OUTPUT [-cf CALLERS_FOLDER] [--max-processes MAX_PROCESSES]
Oncoliner
ONCOLINER
options:
-h, --help show this help message and exit
Expand Down Expand Up @@ -80,11 +80,11 @@ You can check an example of configuration file in [`example/example_config.tsv`]

### Normalization

It is recommended to normalize indels and SNVs before executing Oncoliner. For this purpose, we recommend using pre.py from [Illumina's Haplotype Comparison Tools (hap.py)](https://github.com/Illumina/hap.py). We provide an standalone and containerized **[EUCANCan's pre.py wrapper](https://github.com/EUCANCan/prepy-wrapper)** for this purpose, specially the bulk version of the wrapper. You can check an example of usage in [`example/example_prepy.sh`](/example/example_prepy.sh).
It is recommended to normalize indels and SNVs before executing ONCOLINER. For this purpose, we recommend using pre.py from [Illumina's Haplotype Comparison Tools (hap.py)](https://github.com/Illumina/hap.py). We provide an standalone and containerized **[EUCANCan's pre.py wrapper](https://github.com/EUCANCan/prepy-wrapper)** for this purpose, specially the bulk version of the wrapper. You can check an example of usage in [`example/example_prepy.sh`](/example/example_prepy.sh).

## Tools

Along with Oncoliner, in this repository you can find some tools that may be useful.
Along with ONCOLINER, in this repository you can find some tools that may be useful.

### Pipeline designer

Expand All @@ -96,7 +96,7 @@ WIP

## Modularity

Oncoliner is divided into three functional modules (assesment, improvement and harmonization) and a UI module. For more information about each module, check the corresponding README file in the [`modules`](/modules) folder:
ONCOLINER is divided into three functional modules (assesment, improvement and harmonization) and a UI module. For more information about each module, check the corresponding README file in the [`modules`](/modules) folder:

* [Assesment README](/modules/oncoliner_assesment/README.md)
* [Improvement README](/modules/oncoliner_improvement/README.md)
Expand Down
16 changes: 8 additions & 8 deletions modules/oncoliner_assesment/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Oncoliner: Assesment module<!-- omit in toc -->
# ONCOLINER: Assesment module<!-- omit in toc -->

![Oncoliner logo](../../docs/images/ONCOLINER_LOGO_COLOR.png)
![ONCOLINER logo](../../docs/images/ONCOLINER_LOGO_COLOR.png)

Evaluator of variants (SNVs, indels and SVs) from test VCFs against truth VCFs. It is provided as a standalone command line tool to allow for the comparison of a series of (VCF/BCF/VCF.GZ) files generated by any variant callers against a series of (VCF/BCF/VCF.GZ) truth files. If provided in the truth files the module will also provide information about the genes affected by the variants. Check the [Functional analysis](#functional-analysis) section for more information.

Expand All @@ -17,7 +17,7 @@ It is written in Python 3 (**requires Python version 3.6 or higher**).
- [Configuration file](#configuration-file)

## Dependencies
Oncoliner's assesment module makes use of the following Python modules:
ONCOLINER's assesment module makes use of the following Python modules:
* [`pandas`](https://pandas.pydata.org/)
* [`pysam`](https://github.com/pysam-developers/pysam)
* [`variant-extractor`](https://github.com/EUCANCan/variant-extractor)
Expand All @@ -27,12 +27,12 @@ You may install them using pip:
pip3 install pandas pysam variant-extractor
```

However, we recommend using the provided [Dockerfile](../../Dockerfile)/[Singularity recipe](../../singularity.def) for building the whole Oncoliner suite to avoid dependency issues.
However, we recommend using the provided [Dockerfile](../../Dockerfile)/[Singularity recipe](../../singularity.def) for building the whole ONCOLINER suite to avoid dependency issues.

## Functional analysis

The module will try to obtain the genes affected by the variants from the `INFO` field in the truth files. **WARNING: Oncoliner does not compute genes linked to false positives.** Oncoliner's assesment module is compatible with the following functional analysis tools annotations:
* Oncoliner.
The module will try to obtain the genes affected by the variants from the `INFO` field in the truth files. **WARNING: ONCOLINER does not compute genes linked to false positives.** ONCOLINER's assesment module is compatible with the following functional analysis tools annotations:
* ONCOLINER.
* [**VEP**](https://www.ensembl.org/info/docs/tools/vep/index.html): Variant Effect Predictor from Ensembl.


Expand Down Expand Up @@ -60,7 +60,7 @@ Check the example of usage in [`example/example_main.sh`](./example/example_main
usage: assesment_main.py [-h] -t TRUTHS [TRUTHS ...] -v TESTS [TESTS ...] -o OUTPUT_PREFIX -f FASTA_REF [-it INDEL_THRESHOLD] [-wr WINDOW_RADIUS] [--sv-size-bins SV_SIZE_BINS [SV_SIZE_BINS ...]]
[--contigs CONTIGS [CONTIGS ...]] [--keep-intermediates] [--no-gzip]
Oncoliner Assesment
ONCOLINER Assesment
options:
-h, --help show this help message and exit
Expand Down Expand Up @@ -129,7 +129,7 @@ The configuration file is a TSV file with the following columns:
usage: assesment_bulk.py [-h] -c CONFIG_FILE -o OUTPUT_FOLDER [-it INDEL_THRESHOLD] [-wr WINDOW_RADIUS] [--sv-size-bins SV_SIZE_BINS [SV_SIZE_BINS ...]] [--contigs CONTIGS [CONTIGS ...]] [--keep-intermediates]
[--no-gzip] [-p MAX_PROCESSES]
Oncoliner Assesment Bulk
ONCOLINER Assesment Bulk
options:
-h, --help show this help message and exit
Expand Down
2 changes: 1 addition & 1 deletion modules/oncoliner_assesment/src/assesment_bulk.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ def aggregate_metrics_from_samples(output_file: str, samples_folder: str, recall


if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Oncoliner Assesment Bulk')
parser = argparse.ArgumentParser(description='ONCOLINER Assesment Bulk')
parser.add_argument('-c', '--config-file', required=True, type=str, help='Path to the config TSV file')
parser.add_argument('-o', '--output-folder', required=True, type=str, help='Path to the output folder')
parser.add_argument('-it', '--indel-threshold',
Expand Down
2 changes: 1 addition & 1 deletion modules/oncoliner_assesment/src/assesment_main.py
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ def main(truth_vcfs, test_vcfs, output_prefix, fasta_ref, indel_threshold=DEFAUL


if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Oncoliner Assesment')
parser = argparse.ArgumentParser(description='ONCOLINER Assesment')
parser.add_argument('-t', '--truths', help='Path to the VCF truth files', nargs='+', required=True, type=str)
parser.add_argument('-v', '--tests', help='Path to the VCF test files', nargs='+', required=True, type=str)
parser.add_argument('-o', '--output_prefix',
Expand Down
8 changes: 4 additions & 4 deletions modules/oncoliner_harmonization/README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# Oncoliner: Harmonization module<!-- omit in toc -->
# ONCOLINER: Harmonization module<!-- omit in toc -->

![Oncoliner logo](../../docs/images/ONCOLINER_LOGO_COLOR.png)
![ONCOLINER logo](../../docs/images/ONCOLINER_LOGO_COLOR.png)

WIP

## Dependencies
Oncoliner's harmonization module makes use of the following Python modules:
ONCOLINER's harmonization module makes use of the following Python modules:
* [`pandas`](https://pandas.pydata.org/)
* [`pysam`](https://github.com/pysam-developers/pysam)
* [`variant-extractor`](https://github.com/EUCANCan/variant-extractor)
Expand All @@ -15,4 +15,4 @@ You may install them using pip:
pip3 install pandas pysam variant-extractor
```

However, we recommend using the provided [Dockerfile](../../Dockerfile)/[Singularity recipe](../../singularity.def) for building the whole Oncoliner suite to avoid dependency issues.
However, we recommend using the provided [Dockerfile](../../Dockerfile)/[Singularity recipe](../../singularity.def) for building the whole ONCOLINER suite to avoid dependency issues.
10 changes: 5 additions & 5 deletions modules/oncoliner_improvement/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Oncoliner: Improvement module <!-- omit in toc -->
# ONCOLINER: Improvement module <!-- omit in toc -->

![Oncoliner logo](../../docs/images/ONCOLINER_LOGO_COLOR.png)
![ONCOLINER logo](../../docs/images/ONCOLINER_LOGO_COLOR.png)

WIP

Expand All @@ -11,7 +11,7 @@ WIP


## Dependencies
Oncoliner's improvement module makes use of the following Python modules:
ONCOLINER's improvement module makes use of the following Python modules:
* [`pandas`](https://pandas.pydata.org/)
* [`pysam`](https://github.com/pysam-developers/pysam)
* [`variant-extractor`](https://github.com/EUCANCan/variant-extractor)
Expand All @@ -21,14 +21,14 @@ You may install them using pip:
pip3 install pandas pysam variant-extractor
```

However, we recommend using the provided [Dockerfile](../../Dockerfile)/[Singularity recipe](../../singularity.def) for building the whole Oncoliner suite to avoid dependency issues.
However, we recommend using the provided [Dockerfile](../../Dockerfile)/[Singularity recipe](../../singularity.def) for building the whole ONCOLINER suite to avoid dependency issues.


## Usage
```
usage: main.py [-h] -e EVALUATION_RESULTS -c CALLERS_FOLDER -o OUTPUT -rs RECALL_SAMPLES [RECALL_SAMPLES ...] -ps PRECISION_SAMPLES [PRECISION_SAMPLES ...] [-lm LOSS_MARGIN] [-wr WINDOW_RADIUS] [-p PROCESSES]
Oncoliner Improvement
ONCOLINER Improvement
options:
-h, --help show this help message and exit
Expand Down
2 changes: 1 addition & 1 deletion modules/oncoliner_improvement/src/improvement_main.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from _internal.recommendator import main

if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Oncoliner Improvement')
parser = argparse.ArgumentParser(description='ONCOLINER Improvement')
parser.add_argument('-e', '--evaluation-results', type=str, required=True,
help='Pipeline evaluation results folder path')
parser.add_argument('-c', '--callers-folder', type=str, required=True, help='Callers folder path')
Expand Down
4 changes: 2 additions & 2 deletions modules/oncoliner_ui/src/ui/html_templates/conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -98,13 +98,13 @@
"protein_affected_genes":{
"name":"Prot. genes",
"tooltip":"Genes whose proteins are affected by discovered variants (only TP)",
"legend": "Warning: Oncoliner does not compute genes linked to false positives.",
"legend": "Warning: ONCOLINER does not compute genes linked to false positives.",
"sortable": true
},
"protein_affected_driver_genes":{
"name":"Cancer driver prot. genes",
"tooltip":"Cancer driver genes whose proteins are affected by discovered variants (only TP)",
"legend": "Warning: Oncoliner does not compute genes linked to false positives.",
"legend": "Warning: ONCOLINER does not compute genes linked to false positives.",
"sortable": true
},
"added_callers":{
Expand Down
8 changes: 4 additions & 4 deletions modules/oncoliner_ui/src/ui/html_templates/index/base.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="#33b5e5">
<title>Oncoliner report</title>
<link rel="shortcut icon" href="data:image/svg+xml,{{ include_encoded('index/svg/Oncoliner_icon.svg') }}" >
<title>ONCOLINER report</title>
<link rel="shortcut icon" href="data:image/svg+xml,{{ include_encoded('index/svg/ONCOLINER_icon.svg') }}" >
{% block styles %}
<style type="text/css">{{ include_raw('index/css_external/[email protected]/bootstrap.min.css') }}</style>
<style type="text/css">{{ include_raw('index/css_external/[email protected]/datatables.min.css') }}</style>
Expand Down Expand Up @@ -54,7 +54,7 @@

<!-- TODO: Henri: The "fade" class does not work, no animation is shown -->
<section role="tabpanel">
<div id="main-oncoliner-logo" class="logo-container"> {{include_raw('index/svg/Oncoliner_logo.svg')}} </div>
<div id="main-oncoliner-logo" class="logo-container"> {{include_raw('index/svg/ONCOLINER_logo.svg')}} </div>
<nav class="nav nav-tabs main-nav-tabs">
<div class="nav viz-nav-tabs-container" id="nav-tab" role="tablist">
<button class="nav-link active" id="nav-assesment-tab" data-bs-toggle="tab" data-bs-target="#nav-assesment" type="button" role="tab" aria-controls="nav-assesment" aria-selected="true">Assesment</button>
Expand Down Expand Up @@ -83,7 +83,7 @@
<footer class="viz-footer">
<div>
<p>
Report generated by <a href="{{conf['commons']['links']['oncoliner']}}" target="_blank">Oncoliner</a>.
Report generated by <a href="{{conf['commons']['links']['oncoliner']}}" target="_blank">ONCOLINER</a>.
</p>
<p>
This report uses
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,5 +18,5 @@
{% endif %}
</div>
{% endfor %}
<p>If any of these warnings are relevant to your analysis, please check the configuration file and input VCF files and execute Oncoliner again.</p>
<p>If any of these warnings are relevant to your analysis, please check the configuration file and input VCF files and execute ONCOLINER again.</p>
</div>
4 changes: 2 additions & 2 deletions oncoliner_launcher.py
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ def check_samples_folders(pipeline_folder_path: str, sample_names: Set[str]) ->


if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Oncoliner')
parser = argparse.ArgumentParser(description='ONCOLINER')
parser.add_argument('-c', '--config', type=str, required=True, help='Path to config file')
parser.add_argument('-pf', '--pipelines-folders', type=str, required=True, nargs='+', help='Paths to pipelines folders')
parser.add_argument('-o', '--output', type=str, required=True, help='Path to output folder')
Expand Down Expand Up @@ -173,4 +173,4 @@ def check_samples_folders(pipeline_folder_path: str, sample_names: Set[str]) ->
run_ui(pipelines_evaluation_folder_paths, pipeline_improvements_folder_paths,
args.callers_folder, output_harmonization_folder, ui_output_file)

logging.info(f'Oncoliner report available at {ui_output_file}')
logging.info(f'ONCOLINER report available at {ui_output_file}')
8 changes: 4 additions & 4 deletions tools/pipeline_designer/README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
# Pipeline Designer<!-- omit in toc -->

Pipeline Designer is a standalone tool that allows the user to combine the results of different variant callers to improve the results of a variant calling pipeline. Pipeline Designer outputs the list of the best combinations of variant callers for each variant type and size, including SNVs, indels and SVs. Pipeline Designer also displays the F1-score, precision, recall and the number and names of genes discovered (if provided) of each combination (see [Oncoliner's assesment module](../../modules/oncoliner_assesment/) for more information about the evaluation process).
Pipeline Designer is a standalone tool that allows the user to combine the results of different variant callers to improve the results of a variant calling pipeline. Pipeline Designer outputs the list of the best combinations of variant callers for each variant type and size, including SNVs, indels and SVs. Pipeline Designer also displays the F1-score, precision, recall and the number and names of genes discovered (if provided) of each combination (see [ONCOLINER's assesment module](../../modules/oncoliner_assesment/) for more information about the evaluation process).

The user just needs to provide the VCF files of the variant callers they want to combine as well as the truth files of the samples. The user must also specify which samples should be used to compute recall related metrics and which samples should be used to compute precision related metrics. Pipeline Designer will automatically combine the variant callers and evaluate the results. Check the [Use case example](#use-case-example) section for more information.

Pipeline Designer is part of the [Oncoliner suite](../../README.md) and is provided as a standalone command line tool. It is available as in the [Docker image](../../Dockerfile) and [Singularity image](../../singularity.def) of Oncoliner.
Pipeline Designer is part of the [ONCOLINER suite](../../README.md) and is provided as a standalone command line tool. It is available as in the [Docker image](../../Dockerfile) and [Singularity image](../../singularity.def) of ONCOLINER.

## Table of contents<!-- omit in toc -->
- [Dependencies](#dependencies)
Expand All @@ -15,7 +15,7 @@ Pipeline Designer is part of the [Oncoliner suite](../../README.md) and is provi


## Dependencies
Oncoliner's pipeline designer makes use of the following Python modules:
ONCOLINER's pipeline designer makes use of the following Python modules:
* [`pandas`](https://pandas.pydata.org/)
* [`pysam`](https://github.com/pysam-developers/pysam)
* [`pysam`](https://github.com/pysam-developers/pysam)
Expand All @@ -25,7 +25,7 @@ You may install them using pip:
pip3 install pandas pysam variant-extractor
```

However, we recommend using the provided [Dockerfile](../../Dockerfile)/[Singularity recipe](../../singularity.def) for building the whole Oncoliner suite to avoid dependency issues.
However, we recommend using the provided [Dockerfile](../../Dockerfile)/[Singularity recipe](../../singularity.def) for building the whole ONCOLINER suite to avoid dependency issues.

## Usage

Expand Down

0 comments on commit 728dc3a

Please sign in to comment.