-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.nf
84 lines (61 loc) · 2.23 KB
/
main.nf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#!/usr/bin/env nextflow
// Define workflow parameters
params.counts = null
params.fastq = null
params.reference_transcriptome = "none"
params.organism = "human"
params.tissue = null
params.markers = null
params.experiment_name = "cellranger_output"
params.resolution = 0.8
params.min_genes = 200
params.min_cells = 3
params.clustering = "leiden"
params.verbose = false
params.help = null
// Help message
if (params.help) {
log.info """\
scType Nextflow:
single-cell processing and annotation workflow
----------------------------------------------
Usage:
nextflow run
Parameters:
--counts: Path to the directory with the barcodes, genes and matrix. Default: null
--organism: Either `human` or `mouse`. Default: human
--tissue: One of ScType's available tissues. Default: null
--markers: Path to a csv file with markers according to ScVerse's specifications. Default: null
--resolution: Louvain or Leiden's clustering resolution. Default: 0.8
--min_genes: Minimum number of genes for cell filtering. Default: 200
--min_cells: Minimum number of cells for gene filtering. Default: 3
--clustering: Clustering method. Either `leiden` or `louvain`. Default: leiden
--verbose: true or false. Default: false
"""
.stripIdent()
exit(0)
}
// Print parameters
log.info """\
scType Nextflow:
single-cell processing and annotation workflow
----------------------------------------------
"""
// Include processes
//include { CreateCountMatrix } from './CreateCountMatrix/CreateCountMatrix.nf'
include { ProcessCounts } from './ProcessCounts/ProcessCounts.nf'
include { ManualAnnotation } from './ManualAnnotation/ManualAnnotation.nf'
include { ScType } from './ScType/ScType.nf'
include { ScVerse } from './ScVerse/ScVerse.nf'
// Setup workflow
workflow {
ProcessCounts(params.counts)
ManualAnnotation(ProcessCounts.out.dataset)
ScType(ProcessCounts.out.dataset)
scverse_ch = ScVerse(ProcessCounts.out.dataset)
//countMatrix_ch = CreateCountMatrix(params.fastq, params.reference_transcriptome)
}
// Print message when workflow is completed
workflow.onComplete {
log.info ( workflow.success ? "\nDone!\n" : "Something went wrong" )
}