Kallisto-Quant¶
kallistoQuant
· 1 contributor · 1 version
Builds a kallisto index
Quickstart¶
from janis_bioinformatics.tools.kallisto.quant.versions import KallistoQuant_0_46_2 wf = WorkflowBuilder("myworkflow") wf.step( "kallistoquant_step", KallistoQuant_0_46_2( index=None, fastq=None, ) ) wf.output("out", source=kallistoquant_step.out) wf.output("stats", source=kallistoquant_step.stats)
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 kallistoQuant:
# user inputs
janis inputs kallistoQuant > inputs.yaml
inputs.yaml
fastq:
- fastq_0.fastq
- fastq_1.fastq
index: index.kidx
- Run kallistoQuant with:
janis run [...run options] \
--inputs inputs.yaml \
kallistoQuant
Information¶
ID: | kallistoQuant |
---|---|
URL: | https://pachterlab.github.io/kallisto/manual.html |
Versions: | v0.46.2 |
Container: | quay.io/biocontainers/kallisto:0.46.2–h4f7b962_1 |
Authors: | Thomas Conway |
Citations: | NL Bray, H Pimentel, P Melsted and L Pachter, Near optimal probabilistic RNA-seq quantification, Nature Biotechnology 34, p 525–527 (2016). |
DOI: | https://doi.org/10.1038/nbt.3519 |
Created: | 2020-05-25 |
Updated: | 2020-05-25 |
Outputs¶
name | type | documentation |
---|---|---|
out | File | |
stats | File |
Additional configuration (inputs)¶
name | type | prefix | position | documentation |
---|---|---|---|---|
index | KallistoIdx | -i | 2 | Filename for the kallisto index to be constructed |
fastq | Array<Fastq> | 4 | FASTQ files to process | |
outdir | Optional<Filename> | -o | 3 | directory to put outputs in |
bias | Optional<Boolean> | –bias | Perform sequence based bias correction | |
fusion | Optional<Boolean> | –fusion | Search for fusions for Pizzly | |
single | Optional<Boolean> | –single | Quantify single-end reads | |
overhang | Optional<Boolean> | –single-overhang | Include reads where unobserved rest of fragment is predicted to lie outside a transcript | |
fr_stranded | Optional<Boolean> | –fr-stranded | Strand specific reads, first read forward | |
rf_stranded | Optional<Boolean> | –rf-stranded | Strand specific reads, first read reverse | |
fragment_length | Optional<Double> | -l | Estimated average fragment length | |
fragment_sd | Optional<Double> | -s | Estimated standard deviation of fragment length |
Workflow Description Language¶
version development
task kallistoQuant {
input {
Int? runtime_cpu
Int? runtime_memory
Int? runtime_seconds
Int? runtime_disks
File index
String? outdir
Array[File] fastq
Boolean? bias
Boolean? fusion
Boolean? single
Boolean? overhang
Boolean? fr_stranded
Boolean? rf_stranded
Float? fragment_length
Float? fragment_sd
}
command <<<
set -e
kallisto quant \
~{if (defined(bias) && select_first([bias])) then "--bias" else ""} \
~{if (defined(fusion) && select_first([fusion])) then "--fusion" else ""} \
~{if (defined(single) && select_first([single])) then "--single" else ""} \
~{if (defined(overhang) && select_first([overhang])) then "--single-overhang" else ""} \
~{if (defined(fr_stranded) && select_first([fr_stranded])) then "--fr-stranded" else ""} \
~{if (defined(rf_stranded) && select_first([rf_stranded])) then "--rf-stranded" else ""} \
~{if defined(fragment_length) then ("-l " + fragment_length) else ''} \
~{if defined(fragment_sd) then ("-s " + fragment_sd) else ''} \
-i '~{index}' \
-o '~{select_first([outdir, "generated"])}' \
~{if length(fastq) > 0 then "'" + sep("' '", fastq) + "'" else ""}
>>>
runtime {
cpu: select_first([runtime_cpu, 1, 1])
disks: "local-disk ~{select_first([runtime_disks, 20])} SSD"
docker: "quay.io/biocontainers/kallisto:0.46.2--h4f7b962_1"
duration: select_first([runtime_seconds, 86400])
memory: "~{select_first([runtime_memory, 2, 4])}G"
preemptible: 2
}
output {
File out = (select_first([outdir, "generated"]) + "/abundance.tsv")
File stats = (select_first([outdir, "generated"]) + "/run_info.json")
}
}
Common Workflow Language¶
#!/usr/bin/env cwl-runner
class: CommandLineTool
cwlVersion: v1.2
label: Kallisto-Quant
doc: Builds a kallisto index
requirements:
- class: ShellCommandRequirement
- class: InlineJavascriptRequirement
- class: DockerRequirement
dockerPull: quay.io/biocontainers/kallisto:0.46.2--h4f7b962_1
inputs:
- id: index
label: index
doc: Filename for the kallisto index to be constructed
type: File
inputBinding:
prefix: -i
position: 2
- id: outdir
label: outdir
doc: directory to put outputs in
type:
- string
- 'null'
default: generated
inputBinding:
prefix: -o
position: 3
- id: fastq
label: fastq
doc: FASTQ files to process
type:
type: array
items: File
inputBinding:
position: 4
- id: bias
label: bias
doc: Perform sequence based bias correction
type:
- boolean
- 'null'
inputBinding:
prefix: --bias
- id: fusion
label: fusion
doc: Search for fusions for Pizzly
type:
- boolean
- 'null'
inputBinding:
prefix: --fusion
- id: single
label: single
doc: Quantify single-end reads
type:
- boolean
- 'null'
inputBinding:
prefix: --single
- id: overhang
label: overhang
doc: |-
Include reads where unobserved rest of fragment is predicted to lie outside a transcript
type:
- boolean
- 'null'
inputBinding:
prefix: --single-overhang
- id: fr_stranded
label: fr_stranded
doc: Strand specific reads, first read forward
type:
- boolean
- 'null'
inputBinding:
prefix: --fr-stranded
- id: rf_stranded
label: rf_stranded
doc: Strand specific reads, first read reverse
type:
- boolean
- 'null'
inputBinding:
prefix: --rf-stranded
- id: fragment_length
label: fragment_length
doc: Estimated average fragment length
type:
- double
- 'null'
inputBinding:
prefix: -l
- id: fragment_sd
label: fragment_sd
doc: Estimated standard deviation of fragment length
type:
- double
- 'null'
inputBinding:
prefix: -s
outputs:
- id: out
label: out
type: File
outputBinding:
glob: $((inputs.outdir + "/abundance.tsv"))
outputEval: $((inputs.outdir.basename + "/abundance.tsv"))
loadContents: false
- id: stats
label: stats
type: File
outputBinding:
glob: $((inputs.outdir + "/run_info.json"))
outputEval: $((inputs.outdir.basename + "/run_info.json"))
loadContents: false
stdout: _stdout
stderr: _stderr
baseCommand:
- kallisto
- quant
arguments: []
hints:
- class: ToolTimeLimit
timelimit: |-
$([inputs.runtime_seconds, 86400].filter(function (inner) { return inner != null })[0])
id: kallistoQuant