forked from porchard/2020-sn-muscle
-
Notifications
You must be signed in to change notification settings - Fork 2
/
counts-atac.nf
35 lines (26 loc) · 1.03 KB
/
counts-atac.nf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env nextflow
ROOT = params.projroot
BAM_CHAN = Channel.fromPath(params.bam_glob)
process uncorrected_counts {
memory '40 GB'
container "${params.containers.snATAC}"
maxRetries 1
time '24h'
errorStrategy 'retry'
cache false
publishDir "${params.results}/uncorrected-counts", mode: 'rellink'
input:
file(bam) from BAM_CHAN
output:
set val(library), val(genome), file("${library}-${genome}.counts.txt")
script:
m = bam.getName() =~ /(.*)-(.*)\.pruned\.bam/
library = m[0][1]
genome = m[0][2]
"""
cat ${ROOT}/data/liger-features/${genome}.features.noblacklist | sort -k1V,1 -k2n,2 > genes.sorted.bed
sort-bed-by-bam.py genes.sorted.bed $bam > genes.sorted_by_bam.bed
bedtools intersect -wa -wb -bed -sorted -a $bam -b genes.sorted_by_bam.bed | cut -f4,16 | perl -pe 's@.*_(.*)/\\d+\\t(.*)@\$1\\t\$2@' > overlaps.txt
atac-overlaps-to-feature-counts.py overlaps.txt ${library}-${genome} > ${library}-${genome}.counts.txt
"""
}