diff --git a/src/nf_modules/alntools/main.nf b/src/nf_modules/alntools/main.nf new file mode 100644 index 0000000000000000000000000000000000000000..e6f990d03bcfccf6343da1d6b68b9d6af7a895a9 --- /dev/null +++ b/src/nf_modules/alntools/main.nf @@ -0,0 +1,32 @@ +version = "dd69682" +container_url = "lbmc/alntools:${version}" + +process bam2ec { + container = "${container_url}" + label "big_mem_mono_cpus" + tag "$file_id" + + input: + tuple val(file_id), path(bam) + tuple val(gtf_id), path(gtf) + + output: + tuple val(file_id), path("${bam.simpleName}.bin"), emit: bin + tuple val(gtf_id), path("${gtf.simpleName}_transcripts_lengths.tsv"), emit: tsv + + script: +""" +awk -F"\t" ' +$3=="exon" + { + ID=substr($9, length($9)-16, 15); + L[ID]+=$5-$4+1 + } +END{ + for(i in L) + {print i"\t"L[i]} + } +' ${gtf} ${gtf.simpleName}_transcripts_lengths.tsv +alntools bam2ec -t ${gtf.simpleName}_transcripts_lengths.tsv -c 8 ${bam} ${bam.simpleName}.bin +""" +} \ No newline at end of file