Skip to content

Commit

Permalink
Fix seacr (#205)
Browse files Browse the repository at this point in the history
* add resouces to fragment bedgraph and fix logging

* bugfix

* scale resources fragment bdg

* fix sort

* make bamtobed log temp

* rm temp files
  • Loading branch information
CChahrour committed Jul 31, 2024
1 parent f5a12b0 commit 6736dfe
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions seqnado/workflow/rules/pileup_default.smk
Original file line number Diff line number Diff line change
Expand Up @@ -120,21 +120,27 @@ rule fragment_bedgraph:
bai="seqnado_output/aligned/{sample}.bam.bai",
output:
filtered=temp("seqnado_output/bedgraphs/{sample}.filtered.bam"),
sort=temp("seqnado_output/bedgraphs/{sample}.sorted.bam"),
bed=temp("seqnado_output/bedgraphs/{sample}.bed"),
bed_log=temp("seqnado_output/logs/bedgraphs/{sample}_bamtobed.log"),
fragments=temp("seqnado_output/bedgraphs/{sample}.fragments.bed"),
bdg="seqnado_output/bedgraphs/{sample}.bedGraph",
params:
genome=config['genome']['chromosome_sizes'],
threads: 16
resources:
mem=lambda wildcards, attempt: define_memory_requested(initial_value=2, attempts=attempt, scale=SCALE_RESOURCES),
runtime=lambda wildcards, attempt: define_time_requested(initial_value=4, attempts=attempt, scale=SCALE_RESOURCES),
log:
"seqnado_output/logs/bedgraphs/{sample}.log",
shell:"""
samtools view -q 30 -f 2 -h {input.bam} | grep -v chrM | \
samtools sort -o {output.filtered} -T {output.filtered}.tmp > {log} 2>&1
bedtools bamtobed -bedpe -i {output.filtered} > {output.bed} 2>&1 | tee -a {log}
awk '$1==$4 && $6-$2 < 1000 {{print $0}}' {output.bed} 2>&1 | tee -a {log} | \
awk 'BEGIN {{OFS="\t"}} {{print $1, $2, $6}}' 2>&1 | tee -a {log} | \
sort -k1,1 -k2,2n -k3,3n > {output.fragments} 2>&1 | tee -a {log}
bedtools genomecov -bg -i {output.fragments} -g {params.genome} > {output.bdg} 2>&1 | tee -a {log}
samtools view -@ {threads} -q 30 -f 2 -h {input.bam} | grep -v chrM > {output.filtered} 2> {log}
samtools sort -@ {threads} -m 900M -o {output.sort} -T {output.sort}.tmp {output.filtered} 2>> {log}
bedtools bamtobed -bedpe -i {output.sort} > {output.bed} 2>> {output.bed_log}
awk '$1==$4 && $6-$2 < 1000' {output.bed} > {output.fragments}.temp 2>> {log}
awk 'BEGIN {{OFS="\t"}} {{print $1, $2, $6}}' {output.fragments}.temp | sort -k1,1 -k2,2n -k3,3n > {output.fragments} 2>> {log}
bedtools genomecov -bg -i {output.fragments} -g {params.genome} > {output.bdg} 2>> {log}
rm seqnado_output/bedgraphs/{wildcards.sample}.fragments.bed.temp
"""

ruleorder: deeptools_make_bigwigs_rna_plus > deeptools_make_bigwigs_rna_minus > deeptools_make_bigwigs

0 comments on commit 6736dfe

Please sign in to comment.