Skip to content
Snippets Groups Projects
Select Git revision
  • 231fd9e6a361a8095f07f32ce8c42b69f9409f8f
  • master default protected
  • z483801-master-patch-47889
  • dev
  • v0.4.0
  • v0.3.0
  • v0.2.9
  • v0.2.8
  • v0.2.7
  • v0.2.6
  • v0.1.0
  • v0.2.5
  • v0.2.4
  • v0.2.3
  • v0.2.2
  • v0.2.1
  • v0.2.0
  • v0.1.2
18 results

htseq.nf

Blame
  • Forked from LBMC / nextflow
    940 commits behind the upstream repository.
    Laurent Modolo's avatar
    231fd9e6
    History
    htseq.nf 1.08 KiB
    params.bam = "$baseDir/data/bam/*.bam"
    params.gtf = "$baseDir/data/annotation/*.gtf"
    
    log.info "bam files : ${params.bam}"
    log.info "gtf files : ${params.gtf}"
    
    Channel
      .fromPath( params.bam )
      .ifEmpty { error "Cannot find any fastq files matching: ${params.bam}" }
      .map { it -> [(it.baseName =~ /([^\.]*)/)[0][1], it]}
      .set { bam_files }
    Channel
      .fromPath( params.gtf )
      .ifEmpty { error "Cannot find any gtf file matching: ${params.gtf}" }
      .set { gtf_file }
    
    process sort_bam {
      tag "$file_id"
      cpus 4
    
      input:
        set file_id, file(bam) from bam_files
    
      output:
        set file_id, "*_sorted.sam" into sorted_bam_files
    
      script:
    """
    # sort bam by name
    samtools sort -@ ${task.cpus} -n -O SAM -o ${file_id}_sorted.sam ${bam}
    """
    }
    
    process counting {
      tag "$file_id"
      publishDir "results/quantification/", mode: 'copy'
    
      input:
      set file_id, file(bam) from sorted_bam_files
      file gtf from gtf_file
    
      output:
      file "*.count" into count_files
    
      script:
    """
    htseq-count ${bam} ${gtf} \
    -r pos --mode=intersection-nonempty -a 10 -s no -t exon -i gene_id \
    > ${file_id}.count
    """
    }