TOULLIGQC
A post sequencing QC tool for Oxford Nanopore sequencers.
URL: https://github.com/GenomiqueENS/toulligQC
Example
This wrapper can be used in the following way:
rule toulligqc_sequencing_summary:
input:
"demodata/sequencing_summary.txt",
output:
"toulligqc_sequencing_summary/report.html",
log:
"toulligqc_sequencing_summary/merged.log",
params:
extra="", # optional additional parameters as string
wrapper:
"v5.6.1-7-g2ff6d79/bio/toulligqc"
rule toulligqc_bam:
input:
"demodata/test.sorted.bam",
output:
"toulligqc_bam/report.html",
log:
"toulligqc_bam/merged.log",
params:
extra="", # optional additional parameters as string
wrapper:
"v5.6.1-7-g2ff6d79/bio/toulligqc"
rule toulligqc_fastq:
input:
"demodata/test.fastq.gz",
output:
"toulligqc_fastq/report.html",
log:
"toulligqc_fastq/merged.log",
params:
extra="", # optional additional parameters as string
wrapper:
"v5.6.1-7-g2ff6d79/bio/toulligqc"
Note that input, output and log file paths can be chosen freely.
When running with
snakemake --use-conda
the software dependencies will be automatically deployed into an isolated environment before execution.
Software dependencies
toulligqc=2.5.6
snakemake-wrapper-utils=0.6.2
Input/Output
Input:
path to input data. Can be either a sequencing summary file, fastq file (uncompressed/ compressed) or bam file.
Output:
report and plots of QC results
Params
extra
: Optional parameters for toulligqc
Code
__author__ = "Salomé Brunon"
__copyright__ = "Copyright 2024, Salomé Brunon"
__email__ = "salome.brunon@gmail.com"
__license__ = "CECILL-2.1"
from snakemake.shell import shell
from pathlib import Path
extra = snakemake.params.get("extra", "")
log = snakemake.log_fmt_shell(stdout=True, stderr=True)
input_path = Path(snakemake.input[0])
if input_path.suffix == ".gz":
input_path = input_path.with_suffix("")
if input_path.suffix in [".fastq", ".fq"]:
input_flag = "--fastq "
elif input_path.suffix == ".bam":
input_flag = "--bam "
else:
input_flag = "--sequencing-summary-source "
outdir = Path(snakemake.output[0]).parent
shell("toulligqc {input_flag} {snakemake.input[0]} {extra} --force -n {outdir} {log}")