featureCounts¶
featureCounts
· 1 contributor · 1 version
FeatureCounts: A General-Purpose Read Summarization Function This function assigns mapped sequencing reads to genomic features
Quickstart¶
from janis_bioinformatics.tools.subread.featurecounts.versions import FeatureCounts_2_0_1 wf = WorkflowBuilder("myworkflow") wf.step( "featurecounts_step", FeatureCounts_2_0_1( bam=None, annotationFile=None, ) ) wf.output("out", source=featurecounts_step.out)
OR
- Install Janis
- Ensure Janis is configured to work with Docker or Singularity.
- Ensure all reference files are available:
Note
More information about these inputs are available below.
- Generate user input files for featureCounts:
# user inputs
janis inputs featureCounts > inputs.yaml
inputs.yaml
annotationFile: annotationFile
bam:
- bam_0.bam
- bam_1.bam
- Run featureCounts with:
janis run [...run options] \
--inputs inputs.yaml \
featureCounts
Information¶
ID: | featureCounts |
---|---|
URL: | https://www.rdocumentation.org/packages/Rsubread/versions/1.22.2/topics/featureCounts |
Versions: | 2.0.1 |
Container: | quay.io/biocontainers/subread:2.0.1–hed695b0_0 |
Authors: | Jiaan Yu |
Citations: | None |
Created: | 2020-07-16 |
Updated: | 2020-07-16 |
Outputs¶
name | type | documentation |
---|---|---|
out | TextFile |
Additional configuration (inputs)¶
name | type | prefix | position | documentation |
---|---|---|---|---|
bam | Array<BAM> | 10 | A list of SAM or BAM format files. They can be either name or location sorted. If no files provided, <stdin> input is expected. Location-sorted paired-end reads are automatically sorted by read names. | |
annotationFile | File | -a | Name of an annotation file. GTF/GFF format by default. See -F option for more format information. Inbuilt annotations (SAF format) is available in ‘annotation’ directory of the package. Gzipped file is also accepted. | |
format | Optional<String> | -F | Specify format of the provided annotation file. Acceptable formats include ‘GTF’ (or compatible GFF format) and ‘SAF’. ‘GTF’ by default. For SAF format, please refer to Users Guide. | |
featureType | Optional<Array<String>> | -t | Specify feature type(s) in a GTF annotation. If multiple types are provided, they should be separated by ‘,’ with no space in between. ‘exon’ by default. Rows in the annotation with a matched feature will be extracted and used for read mapping. | |
attributeType | Optional<String> | -g | Specify attribute type in GTF annotation. ‘gene_id’ by default. Meta-features used for read counting will be extracted from annotation using the provided value. | |
extraAttributes | Optional<Array<String>> | –extraAttributes | Extract extra attribute types from the provided GTF annotation and include them in the counting output. These attribute types will not be used to group features. If more than one attribute type is provided they should be separated by comma. | |
chromsomeAlias | Optional<String> | -A | Provide a chromosome name alias file to match chr names inannotation with those in the reads. This should be a two-column comma-delimited text file. Its first column should include chr names in the annotation and its second column should include chr names in the reads. Chr names are case sensitive. No column header should be included in the file. | |
featureLevel | Optional<Boolean> | -f | Perform read counting at feature level (eg. counting reads for exons rather than genes). | |
overlap | Optional<Boolean> | -O | Assign reads to all their overlapping meta-features (or features if -f is specified). | |
minOverlap | Optional<Integer> | –minOverlap | Minimum number of overlapping bases in a read that isrequired for read assignment. 1 by default. Number ofoverlapping bases is counted from both reads if pairedend. If a negative value is provided, then a gap of upto specified size will be allowed between read and the feature that the read is assigned to. | |
fracOverlap | Optional<Float> | –fracOverlap | Minimum fraction of overlapping bases in a read that isrequired for read assignment. Value should be within range [0,1]. 0 by default. Number of overlapping bases is counted from both reads if paired end. Both this option and ‘–minOverlap’ option need to be satisfied for read assignment. | |
fracOverlapFeature | Optional<Float> | –fracOverlapFeature | Minimum fraction of overlapping bases in a feature that is required for read assignment. Value should be within range [0,1]. 0 by default. | |
largestOverlap | Optional<Boolean> | –largestOverlap | Assign reads to a meta-feature/feature that has the largest number of overlapping bases. | |
nonOverlap | Optional<Integer> | –nonOverlap | Maximum number of non-overlapping bases in a read (or a read pair) that is allowed when being assigned to a feature. No limit is set by default. | |
nonOverlapFeature | Optional<Integer> | –nonOverlapFeature | Maximum number of non-overlapping bases in a feature that is allowed in read assignment. No limit is set by default. | |
readExtensionFive | Optional<Integer> | –readExtension5 | Reads are extended upstream by <int> bases from their 5’ end. | |
readExtensionThree | Optional<String> | –readExtension3 | Reads are extended upstream by <int> bases from their 3’ end. | |
readToPos | Optional<String> | –read2pos | Reduce reads to their 5’ most base or 3’ most base. Read counting is then performed based on the single base the read is reduced to. | |
multiMapping | Optional<Boolean> | -M | Multi-mapping reads will also be counted. For a multi-mapping read, all its reported alignments will be counted. The ‘NH’ tag in BAM/SAM input is used to detect multi-mapping reads. | |
fration | Optional<Boolean> | –fraction | Assign fractional counts to features. This option must be used together with ‘-M’ or ‘-O’ or both. When ‘-M’ is specified, each reported alignment from a multi-mapping read (identified via ‘NH’ tag) will carry a fractional count of 1/x, instead of 1 (one), where x is the total number of alignments reported for the same read. When ‘-O’ is specified, each overlapping feature will receive a fractional count of 1/y, where y is the total number of features overlapping with the read. When both ‘-M’ and ‘-O’ are specified, each alignment will carry a fractional count of 1/(x*y). | |
quality | Optional<String> | -Q | The minimum mapping quality score a read must satisfy in order to be counted. For paired-end reads, at least one end should satisfy this criteria. 0 by default. | |
splitOnly | Optional<Boolean> | –splitOnly | Count split alignments only (ie. alignments with CIGAR string containing ‘N’). An example of split alignments is exon-spanning reads in RNA-seq data. | |
nonSplitOnly | Optional<Boolean> | –nonSplitOnly | If specified, only non-split alignments (CIGAR strings do not contain letter ‘N’) will be counted. All the other alignments will be ignored. | |
primary | Optional<Boolean> | –primary | Count primary alignments only. Primary alignments are identified using bit 0x100 in SAM/BAM FLAG field. | |
ignoreDup | Optional<Boolean> | –ignoreDup | Ignore duplicate reads in read counting. Duplicate reads are identified using bit Ox400 in BAM/SAM FLAG field. The whole read pair is ignored if one of the reads is a duplicate read for paired end data. | |
strandness | Optional<String> | Perform strand-specific read counting. A single integer value (applied to all input files) or a string of comma-separated values (applied to each corresponding input file) should be provided. Possible values include: 0 (unstranded), 1 (stranded) and 2 (reversely stranded). Default value is 0 (ie. unstranded read counting carried out for all input files). | ||
junction | Optional<String> | -J | Count number of reads supporting each exon-exon junction. Junctions were identified from those exon-spanning reads in the input (containing ‘N’ in CIGAR string). Counting results are saved to a file named ‘<output_file>.jcounts’ | |
genome | Optional<File> | -G | Provide the name of a FASTA-format file that contains thereference sequences used in read mapping that produced the provided SAM/BAM files. This optional argument can be used with ‘-J’ option to improve read counting for junctions. | |
pairEnd | Optional<Boolean> | -p | If specified, fragments (or templates) will be counted instead of reads. This option is only applicable for paired-end reads; single-end reads are always counted as reads. | |
both | Optional<Boolean> | -B | Only count read pairs that have both ends aligned. | |
pairEndDistance | Optional<Boolean> | -P | Check validity of paired-end distance when counting read pairs. Use -d and -D to set thresholds. | |
minDistance | Optional<Integer> | -d | Minimum fragment/template length, 50 by default. | |
maxDistance | Optional<Integer> | -D | Maximum fragment/template length, 600 by default. | |
countRead | Optional<Boolean> | -C | Do not count read pairs that have their two ends mapping to different chromosomes or mapping to same chromosome but on different strands. | |
doNotSort | Optional<Boolean> | –donotsort | Do not sort reads in BAM/SAM input. Note that reads from the same pair are required to be located next to each other in the input. | |
threads | Optional<Integer> | -T | Number of the threads. 1 by default. | |
byReadGroup | Optional<Boolean> | –byReadGroup | Assign reads by read group. ‘RG’ tag is required to be present in the input BAM/SAM files. | |
longRead | Optional<Boolean> | -L | Count long reads such as Nanopore and PacBio reads. Long read counting can only run in one thread and only reads (not read-pairs) can be counted. There is no limitation on the number of ‘M’ operations allowed in a CIGAR string in long read counting. | |
outputFormat | Optional<String> | -R | Output detailed assignment results for each read or read-pair. Results are saved to a file that is in one of the following formats: CORE, SAM and BAM. See Users Guide for more info about these formats. | |
outputDirectory | Optional<String> | –Rpath | Specify a directory to save the detailed assignment results. If unspecified, the directory where counting results are saved is used. | |
tmpDir | Optional<String> | –tmpDir | Directory under which intermediate files are saved (later removed). By default, intermediate files will be saved to the directory specified in ‘-o’ argument. | |
maxMOp | Optional<Integer> | –maxMOp | Maximum number of ‘M’ operations allowed in a CIGAR string. 10 by default. Both ‘X’ and ‘=’ are treated as ‘M’ and adjacent ‘M’ operations are merged in the CIGAR string. | |
outputFilename | Optional<Filename> | -o | Name of output file including read counts. A separate file including summary statistics of counting results is also included in the output (‘<string>.summary’). Both files are in tab delimited format. |
Workflow Description Language¶
version development
task featureCounts {
input {
Int? runtime_cpu
Int? runtime_memory
Int? runtime_seconds
Int? runtime_disks
String? format
Array[String]? featureType
String? attributeType
Array[String]? extraAttributes
String? chromsomeAlias
Boolean? featureLevel
Boolean? overlap
Int? minOverlap
Float? fracOverlap
Float? fracOverlapFeature
Boolean? largestOverlap
Int? nonOverlap
Int? nonOverlapFeature
Int? readExtensionFive
String? readExtensionThree
String? readToPos
Boolean? multiMapping
Boolean? fration
String? quality
Boolean? splitOnly
Boolean? nonSplitOnly
Boolean? primary
Boolean? ignoreDup
String? strandness
String? junction
File? genome
Boolean? pairEnd
Boolean? both
Boolean? pairEndDistance
Int? minDistance
Int? maxDistance
Boolean? countRead
Boolean? doNotSort
Int? threads
Boolean? byReadGroup
Boolean? longRead
String? outputFormat
String? outputDirectory
String? tmpDir
Int? maxMOp
Array[File] bam
String? outputFilename
File annotationFile
}
command <<<
set -e
featureCounts \
~{if defined(format) then ("-F '" + format + "'") else ""} \
~{if (defined(featureType) && length(select_first([featureType])) > 0) then "-t '" + sep("','", select_first([featureType])) + "'" else ""} \
~{if defined(attributeType) then ("-g '" + attributeType + "'") else ""} \
~{if (defined(extraAttributes) && length(select_first([extraAttributes])) > 0) then "--extraAttributes '" + sep("','", select_first([extraAttributes])) + "'" else ""} \
~{if defined(chromsomeAlias) then ("-A '" + chromsomeAlias + "'") else ""} \
~{if (defined(featureLevel) && select_first([featureLevel])) then "-f" else ""} \
~{if (defined(overlap) && select_first([overlap])) then "-O" else ""} \
~{if defined(minOverlap) then ("--minOverlap " + minOverlap) else ''} \
~{if defined(fracOverlap) then ("--fracOverlap " + fracOverlap) else ''} \
~{if defined(fracOverlapFeature) then ("--fracOverlapFeature " + fracOverlapFeature) else ''} \
~{if (defined(largestOverlap) && select_first([largestOverlap])) then "--largestOverlap" else ""} \
~{if defined(nonOverlap) then ("--nonOverlap " + nonOverlap) else ''} \
~{if defined(nonOverlapFeature) then ("--nonOverlapFeature " + nonOverlapFeature) else ''} \
~{if defined(readExtensionFive) then ("--readExtension5 " + readExtensionFive) else ''} \
~{if defined(readExtensionThree) then ("--readExtension3 '" + readExtensionThree + "'") else ""} \
~{if defined(readToPos) then ("--read2pos '" + readToPos + "'") else ""} \
~{if (defined(multiMapping) && select_first([multiMapping])) then "-M" else ""} \
~{if (defined(fration) && select_first([fration])) then "--fraction" else ""} \
~{if defined(quality) then ("-Q '" + quality + "'") else ""} \
~{if (defined(splitOnly) && select_first([splitOnly])) then "--splitOnly" else ""} \
~{if (defined(nonSplitOnly) && select_first([nonSplitOnly])) then "--nonSplitOnly" else ""} \
~{if (defined(primary) && select_first([primary])) then "--primary" else ""} \
~{if (defined(ignoreDup) && select_first([ignoreDup])) then "--ignoreDup" else ""} \
~{if defined(strandness) then ("- '" + strandness + "'") else ""} \
~{if defined(junction) then ("-J '" + junction + "'") else ""} \
~{if defined(genome) then ("-G '" + genome + "'") else ""} \
~{if (defined(pairEnd) && select_first([pairEnd])) then "-p" else ""} \
~{if (defined(both) && select_first([both])) then "-B" else ""} \
~{if (defined(pairEndDistance) && select_first([pairEndDistance])) then "-P" else ""} \
~{if defined(minDistance) then ("-d " + minDistance) else ''} \
~{if defined(maxDistance) then ("-D " + maxDistance) else ''} \
~{if (defined(countRead) && select_first([countRead])) then "-C" else ""} \
~{if (defined(doNotSort) && select_first([doNotSort])) then "--donotsort" else ""} \
~{if defined(threads) then ("-T " + threads) else ''} \
~{if (defined(byReadGroup) && select_first([byReadGroup])) then "--byReadGroup" else ""} \
~{if (defined(longRead) && select_first([longRead])) then "-L" else ""} \
~{if defined(outputFormat) then ("-R '" + outputFormat + "'") else ""} \
~{if defined(outputDirectory) then ("--Rpath '" + outputDirectory + "'") else ""} \
~{if defined(tmpDir) then ("--tmpDir '" + tmpDir + "'") else ""} \
~{if defined(maxMOp) then ("--maxMOp " + maxMOp) else ''} \
-o '~{select_first([outputFilename, "generated.txt"])}' \
-a '~{annotationFile}' \
~{if length(bam) > 0 then "'" + sep("' '", bam) + "'" else ""}
>>>
runtime {
cpu: select_first([runtime_cpu, 1])
disks: "local-disk ~{select_first([runtime_disks, 20])} SSD"
docker: "quay.io/biocontainers/subread:2.0.1--hed695b0_0"
duration: select_first([runtime_seconds, 86400])
memory: "~{select_first([runtime_memory, 4])}G"
preemptible: 2
}
output {
File out = select_first([outputFilename, "generated.txt"])
}
}
Common Workflow Language¶
#!/usr/bin/env cwl-runner
class: CommandLineTool
cwlVersion: v1.2
label: featureCounts
doc: |-
FeatureCounts: A General-Purpose Read Summarization Function
This function assigns mapped sequencing reads to genomic features
requirements:
- class: ShellCommandRequirement
- class: InlineJavascriptRequirement
- class: DockerRequirement
dockerPull: quay.io/biocontainers/subread:2.0.1--hed695b0_0
inputs:
- id: format
label: format
doc: |-
Specify format of the provided annotation file. Acceptable formats include 'GTF' (or compatible GFF format) and 'SAF'. 'GTF' by default. For SAF format, please refer to Users Guide.
type:
- string
- 'null'
inputBinding:
prefix: -F
- id: featureType
label: featureType
doc: |-
Specify feature type(s) in a GTF annotation. If multiple types are provided, they should be separated by ',' with no space in between. 'exon' by default. Rows in the annotation with a matched feature will be extracted and used for read mapping.
type:
- type: array
items: string
- 'null'
inputBinding:
prefix: -t
itemSeparator: ','
- id: attributeType
label: attributeType
doc: |-
Specify attribute type in GTF annotation. 'gene_id' by default. Meta-features used for read counting will be extracted from annotation using the provided value.
type:
- string
- 'null'
inputBinding:
prefix: -g
- id: extraAttributes
label: extraAttributes
doc: |-
Extract extra attribute types from the provided GTF annotation and include them in the counting output. These attribute types will not be used to group features. If more than one attribute type is provided they should be separated by comma.
type:
- type: array
items: string
- 'null'
inputBinding:
prefix: --extraAttributes
itemSeparator: ','
- id: chromsomeAlias
label: chromsomeAlias
doc: |-
Provide a chromosome name alias file to match chr names inannotation with those in the reads. This should be a two-column comma-delimited text file. Its first column should include chr names in the annotation and its second column should include chr names in the reads. Chr names are case sensitive. No column header should be included in the file.
type:
- string
- 'null'
inputBinding:
prefix: -A
- id: featureLevel
label: featureLevel
doc: |-
Perform read counting at feature level (eg. counting reads for exons rather than genes).
type:
- boolean
- 'null'
inputBinding:
prefix: -f
- id: overlap
label: overlap
doc: |-
Assign reads to all their overlapping meta-features (or features if -f is specified).
type:
- boolean
- 'null'
inputBinding:
prefix: -O
- id: minOverlap
label: minOverlap
doc: |-
Minimum number of overlapping bases in a read that isrequired for read assignment. 1 by default. Number ofoverlapping bases is counted from both reads if pairedend. If a negative value is provided, then a gap of upto specified size will be allowed between read and the feature that the read is assigned to.
type:
- int
- 'null'
inputBinding:
prefix: --minOverlap
- id: fracOverlap
label: fracOverlap
doc: |-
Minimum fraction of overlapping bases in a read that isrequired for read assignment. Value should be within range [0,1]. 0 by default. Number of overlapping bases is counted from both reads if paired end. Both this option and '--minOverlap' option need to be satisfied for read assignment.
type:
- float
- 'null'
inputBinding:
prefix: --fracOverlap
- id: fracOverlapFeature
label: fracOverlapFeature
doc: |-
Minimum fraction of overlapping bases in a feature that is required for read assignment. Value should be within range [0,1]. 0 by default.
type:
- float
- 'null'
inputBinding:
prefix: --fracOverlapFeature
- id: largestOverlap
label: largestOverlap
doc: |-
Assign reads to a meta-feature/feature that has the largest number of overlapping bases.
type:
- boolean
- 'null'
inputBinding:
prefix: --largestOverlap
- id: nonOverlap
label: nonOverlap
doc: |-
Maximum number of non-overlapping bases in a read (or a read pair) that is allowed when being assigned to a feature. No limit is set by default.
type:
- int
- 'null'
inputBinding:
prefix: --nonOverlap
- id: nonOverlapFeature
label: nonOverlapFeature
doc: |-
Maximum number of non-overlapping bases in a feature that is allowed in read assignment. No limit is set by default.
type:
- int
- 'null'
inputBinding:
prefix: --nonOverlapFeature
- id: readExtensionFive
label: readExtensionFive
doc: Reads are extended upstream by <int> bases from their 5' end.
type:
- int
- 'null'
inputBinding:
prefix: --readExtension5
- id: readExtensionThree
label: readExtensionThree
doc: Reads are extended upstream by <int> bases from their 3' end.
type:
- string
- 'null'
inputBinding:
prefix: --readExtension3
- id: readToPos
label: readToPos
doc: |-
Reduce reads to their 5' most base or 3' most base. Read counting is then performed based on the single base the read is reduced to.
type:
- string
- 'null'
inputBinding:
prefix: --read2pos
- id: multiMapping
label: multiMapping
doc: |-
Multi-mapping reads will also be counted. For a multi-mapping read, all its reported alignments will be counted. The 'NH' tag in BAM/SAM input is used to detect multi-mapping reads.
type:
- boolean
- 'null'
inputBinding:
prefix: -M
- id: fration
label: fration
doc: |-
Assign fractional counts to features. This option must be used together with '-M' or '-O' or both. When '-M' is specified, each reported alignment from a multi-mapping read (identified via 'NH' tag) will carry a fractional count of 1/x, instead of 1 (one), where x is the total number of alignments reported for the same read. When '-O' is specified, each overlapping feature will receive a fractional count of 1/y, where y is the total number of features overlapping with the read. When both '-M' and '-O' are specified, each alignment will carry a fractional count of 1/(x*y).
type:
- boolean
- 'null'
inputBinding:
prefix: --fraction
- id: quality
label: quality
doc: |-
The minimum mapping quality score a read must satisfy in order to be counted. For paired-end reads, at least one end should satisfy this criteria. 0 by default.
type:
- string
- 'null'
inputBinding:
prefix: -Q
- id: splitOnly
label: splitOnly
doc: |-
Count split alignments only (ie. alignments with CIGAR string containing 'N'). An example of split alignments is exon-spanning reads in RNA-seq data.
type:
- boolean
- 'null'
inputBinding:
prefix: --splitOnly
- id: nonSplitOnly
label: nonSplitOnly
doc: |-
If specified, only non-split alignments (CIGAR strings do not contain letter 'N') will be counted. All the other alignments will be ignored.
type:
- boolean
- 'null'
inputBinding:
prefix: --nonSplitOnly
- id: primary
label: primary
doc: |-
Count primary alignments only. Primary alignments are identified using bit 0x100 in SAM/BAM FLAG field.
type:
- boolean
- 'null'
inputBinding:
prefix: --primary
- id: ignoreDup
label: ignoreDup
doc: |-
Ignore duplicate reads in read counting. Duplicate reads are identified using bit Ox400 in BAM/SAM FLAG field. The whole read pair is ignored if one of the reads is a duplicate read for paired end data.
type:
- boolean
- 'null'
inputBinding:
prefix: --ignoreDup
- id: strandness
label: strandness
doc: |-
Perform strand-specific read counting. A single integer value (applied to all input files) or a string of comma-separated values (applied to each corresponding input file) should be provided. Possible values include: 0 (unstranded), 1 (stranded) and 2 (reversely stranded). Default value is 0 (ie. unstranded read counting carried out for all input files).
type:
- string
- 'null'
inputBinding:
prefix: '-'
- id: junction
label: junction
doc: |-
Count number of reads supporting each exon-exon junction. Junctions were identified from those exon-spanning reads in the input (containing 'N' in CIGAR string). Counting results are saved to a file named '<output_file>.jcounts'
type:
- string
- 'null'
inputBinding:
prefix: -J
- id: genome
label: genome
doc: |-
Provide the name of a FASTA-format file that contains thereference sequences used in read mapping that produced the provided SAM/BAM files. This optional argument can be used with '-J' option to improve read counting for junctions.
type:
- File
- 'null'
inputBinding:
prefix: -G
- id: pairEnd
label: pairEnd
doc: |-
If specified, fragments (or templates) will be counted instead of reads. This option is only applicable for paired-end reads; single-end reads are always counted as reads.
type:
- boolean
- 'null'
inputBinding:
prefix: -p
- id: both
label: both
doc: Only count read pairs that have both ends aligned.
type:
- boolean
- 'null'
inputBinding:
prefix: -B
- id: pairEndDistance
label: pairEndDistance
doc: |-
Check validity of paired-end distance when counting read pairs. Use -d and -D to set thresholds.
type:
- boolean
- 'null'
inputBinding:
prefix: -P
- id: minDistance
label: minDistance
doc: Minimum fragment/template length, 50 by default.
type:
- int
- 'null'
inputBinding:
prefix: -d
- id: maxDistance
label: maxDistance
doc: Maximum fragment/template length, 600 by default.
type:
- int
- 'null'
inputBinding:
prefix: -D
- id: countRead
label: countRead
doc: |-
Do not count read pairs that have their two ends mapping to different chromosomes or mapping to same chromosome but on different strands.
type:
- boolean
- 'null'
inputBinding:
prefix: -C
- id: doNotSort
label: doNotSort
doc: |-
Do not sort reads in BAM/SAM input. Note that reads from the same pair are required to be located next to each other in the input.
type:
- boolean
- 'null'
inputBinding:
prefix: --donotsort
- id: threads
label: threads
doc: Number of the threads. 1 by default.
type:
- int
- 'null'
inputBinding:
prefix: -T
- id: byReadGroup
label: byReadGroup
doc: |-
Assign reads by read group. 'RG' tag is required to be present in the input BAM/SAM files.
type:
- boolean
- 'null'
inputBinding:
prefix: --byReadGroup
- id: longRead
label: longRead
doc: |-
Count long reads such as Nanopore and PacBio reads. Long read counting can only run in one thread and only reads (not read-pairs) can be counted. There is no limitation on the number of 'M' operations allowed in a CIGAR string in long read counting.
type:
- boolean
- 'null'
inputBinding:
prefix: -L
- id: outputFormat
label: outputFormat
doc: |-
Output detailed assignment results for each read or read-pair. Results are saved to a file that is in one of the following formats: CORE, SAM and BAM. See Users Guide for more info about these formats.
type:
- string
- 'null'
inputBinding:
prefix: -R
- id: outputDirectory
label: outputDirectory
doc: |-
Specify a directory to save the detailed assignment results. If unspecified, the directory where counting results are saved is used.
type:
- string
- 'null'
inputBinding:
prefix: --Rpath
- id: tmpDir
label: tmpDir
doc: |-
Directory under which intermediate files are saved (later removed). By default, intermediate files will be saved to the directory specified in '-o' argument.
type:
- string
- 'null'
inputBinding:
prefix: --tmpDir
- id: maxMOp
label: maxMOp
doc: |-
Maximum number of 'M' operations allowed in a CIGAR string. 10 by default. Both 'X' and '=' are treated as 'M' and adjacent 'M' operations are merged in the CIGAR string.
type:
- int
- 'null'
inputBinding:
prefix: --maxMOp
- id: bam
label: bam
doc: |-
A list of SAM or BAM format files. They can be either name or location sorted. If no files provided, <stdin> input is expected. Location-sorted paired-end reads are automatically sorted by read names.
type:
type: array
items: File
inputBinding:
position: 10
- id: outputFilename
label: outputFilename
doc: |-
Name of output file including read counts. A separate file including summary statistics of counting results is also included in the output ('<string>.summary'). Both files are in tab delimited format.
type:
- string
- 'null'
default: generated.txt
inputBinding:
prefix: -o
- id: annotationFile
label: annotationFile
doc: |-
Name of an annotation file. GTF/GFF format by default. See -F option for more format information. Inbuilt annotations (SAF format) is available in 'annotation' directory of the package. Gzipped file is also accepted.
type: File
inputBinding:
prefix: -a
outputs:
- id: out
label: out
type: File
outputBinding:
glob: generated.txt
loadContents: false
stdout: _stdout
stderr: _stderr
baseCommand:
- ''
- featureCounts
arguments: []
hints:
- class: ToolTimeLimit
timelimit: |-
$([inputs.runtime_seconds, 86400].filter(function (inner) { return inner != null })[0])
id: featureCounts