Skip to content
Snippets Groups Projects
dedup_sams.nf 547 B
Newer Older
params.sam = "$baseDir/data/sam/*.bam"
log.info "bam files : ${params.bam}"

Channel
  .fromPath( params.bam )
  .ifEmpty { error "Cannot find any bam files matching: ${params.bam}" }
  .map { it -> [(it.baseName =~ /([^\.]*)/)[0][1], it]}
  .set { bam_files }

process dedup_sam {
  tag "$file_id"
  cpus 4

  input:
    set file_id, file(bam) from bam_files

  output:
    set file_id, "*_dedup.bam*" into dedup_bam_files
  script:
"""
samtools view -h ${bam} | \
samblaster --addMateTags | \
samtools view -Sb - > ${file_id}_dedub.bam