Skip to content

Commit

Permalink
feat: samtools stat bed params (#418)
Browse files Browse the repository at this point in the history
* Update wrapper.py

feat: make it possible to input a bed file as a separate params value.

* Update wrapper.py

* Update wrapper.py

* Update wrapper.py

* Create design.bed

* Update wrapper.py

* Update Snakefile

* Update wrapper.py

* Update environment.yaml

* Update wrapper.py

* Update design.bed

* Update design.bed
  • Loading branch information
Smeds committed May 13, 2022
1 parent 218fd39 commit 28fa3a8
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 4 deletions.
4 changes: 2 additions & 2 deletions bio/samtools/stats/environment.yaml
Expand Up @@ -2,5 +2,5 @@ channels:
- bioconda
- conda-forge
dependencies:
- samtools =1.14
- snakemake-wrapper-utils =0.3
- samtools=1.14
- snakemake-wrapper-utils=0.3
3 changes: 2 additions & 1 deletion bio/samtools/stats/test/Snakefile
@@ -1,6 +1,7 @@
rule samtools_stats:
input:
"mapped/{sample}.bam",
bam="mapped/{sample}.bam",
bed="design.bed", #Optional input, specify target regions
output:
"samtools_stats/{sample}.txt",
params:
Expand Down
1 change: 1 addition & 0 deletions bio/samtools/stats/test/design.bed
@@ -0,0 +1 @@
xx 5 19
9 changes: 8 additions & 1 deletion bio/samtools/stats/wrapper.py
Expand Up @@ -9,14 +9,21 @@
from snakemake.shell import shell
from snakemake_wrapper_utils.samtools import get_samtools_opts


bed = snakemake.input.get("bed", "")
if bed:
bed = "-t " + bed

samtools_opts = get_samtools_opts(
snakemake, parse_write_index=False, parse_output=False, parse_output_format=False
)


extra = snakemake.params.get("extra", "")
region = snakemake.params.get("region", "")
log = snakemake.log_fmt_shell(stdout=False, stderr=True)


shell(
"samtools stats {samtools_opts} {extra} {snakemake.input} {region} > {snakemake.output} {log}"
"samtools stats {samtools_opts} {extra} {snakemake.input.bam} {bed} {region} > {snakemake.output} {log}"
)

0 comments on commit 28fa3a8

Please sign in to comment.