Parses outputs of different QC tools and unifies them for the SMaHT portal
Project description
QC parser for SMaHT
Parses outputs of different QC tools and unifies them for the SMaHT portal
Installation
Simply run pip install qc-parser
to install the package. You need at least Python 3.8.
To develop this package, clone this repo, make sure poetry
is installed on your system and run make install
.
Usage
After installation the following command can be run from the command line:
parse-qc \
-n 'BAM Quality Metrics' \
--metrics samtools /PATH/samtools.stats.txt \
--metrics picard_CollectInsertSizeMetrics /PATH/picard_cis_metrics.txt \
--additional-files /PATH/additional_output_1.pdf \
--additional-files /PATH/additional_output_2.tsv \
--output-zip metrics.zip
--output-json qc_values.json
In this example, the tool will parse the Samtools output file /PATH/samtools.stats.txt
and the Picard output file /PATH/picard_cis_metrics.txt
. The values that are extracted from both files are specified in src/metrics_to_extract.py
. All metrics are combined and stored in qc_values.json
that is compatible with Tibanna_ff's generic QC functionality.
The metrics.zip
will contain the following files:
samtools.stats.txt
picard_cis_metrics.txt
additional_output_1.pdf
additional_output_2.tsv
The currently supported QC tools are:
- samtools_stats (Samtools stats)
- picard_CollectAlignmentSummaryMetrics (Picard CollectAlignmentSummaryMetrics)
- picard_CollectInsertSizeMetrics (Picard CollectInsertSizeMetrics)
- picard_CollectWgsMetrics (Picard CollectWgsMetrics)
- bamstats (bamStats.py)
- fastqc (FastQC)
- rnaseqc (RNA-SeQC)
- nanoplot (NanoPlot)
- verifybamid2 (VerifyBamID2)
- kraken2 (Kraken2)
- mosdepth (mosdepth)
- somalier (Somalier)
Development
If you want to extract a new metric from an already supported QC tool, add the metric to the src/metrics_to_extract.py
in the appropriate section.
If you want to add suuport for a new QC tool, you need to add a parser to src/MetricsParser.py
and add the metrics you want to extract from the tool to src/metrics_to_extract.py
.
Tests
The command make test
will run local tests.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file qc_parser-0.6.0.tar.gz
.
File metadata
- Download URL: qc_parser-0.6.0.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.8.13 Darwin/23.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 45cf4b25659085cf9d3acd3c3fd0a3be2bf0dc3fd5a775c243b01b0dd5fcf8fb |
|
MD5 | 4a5faee5ac4172bcb7f0ee5efd72a66c |
|
BLAKE2b-256 | bbf3239fa655bc605542b94e18b44ff61a127a5bd7be6f850dd776628211fa91 |
File details
Details for the file qc_parser-0.6.0-py3-none-any.whl
.
File metadata
- Download URL: qc_parser-0.6.0-py3-none-any.whl
- Upload date:
- Size: 15.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.8.13 Darwin/23.5.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fa1a64322eb18e8aa7140b22b66c11f930b93f64fd78f66a08c71b2db109a736 |
|
MD5 | b18f847d76203c384463b77907cf3096 |
|
BLAKE2b-256 | 7c09c686d84d8d7f26b6d5f9b60bd70ba61ef93c419e9e74e0f82e68d5968d75 |