mirror of
https://github.com/MillironX/taxprofiler.git
synced 2024-11-22 11:49:55 +00:00
Standardise QC parameter system and turn on both porechop/filtlong in tests
This commit is contained in:
parent
1821496a49
commit
2cc07183a0
7 changed files with 23 additions and 17 deletions
|
@ -136,9 +136,9 @@ process {
|
||||||
|
|
||||||
withName: FILTLONG {
|
withName: FILTLONG {
|
||||||
ext.args = [
|
ext.args = [
|
||||||
"--min_length ${params.longread_qc_minlength}",
|
"--min_length ${params.longread_qc_qualityfilter_minlength}",
|
||||||
"--keep_percent ${params.longread_qc_keep_percent}",
|
"--keep_percent ${params.longread_qc_qualityfilter_keeppercent}",
|
||||||
"--target_bases ${params.longread_qc_target_bases}"
|
"--target_bases ${params.longread_qc_qualityfilter_targetbases}"
|
||||||
]
|
]
|
||||||
.join(' ').trim()
|
.join(' ').trim()
|
||||||
ext.prefix = { "${meta.id}_${meta.run_accession}_filtered" }
|
ext.prefix = { "${meta.id}_${meta.run_accession}_filtered" }
|
||||||
|
|
|
@ -26,6 +26,9 @@ params {
|
||||||
databases = 'https://raw.githubusercontent.com/nf-core/test-datasets/taxprofiler/database.csv'
|
databases = 'https://raw.githubusercontent.com/nf-core/test-datasets/taxprofiler/database.csv'
|
||||||
perform_shortread_qc = true
|
perform_shortread_qc = true
|
||||||
perform_longread_qc = true
|
perform_longread_qc = true
|
||||||
|
shortread_qc_mergepairs = true
|
||||||
|
longread_qc_skipadaptertrim = false
|
||||||
|
longread_qc_qualityfilter = true
|
||||||
perform_shortread_complexityfilter = true
|
perform_shortread_complexityfilter = true
|
||||||
perform_shortread_hostremoval = true
|
perform_shortread_hostremoval = true
|
||||||
perform_longread_hostremoval = true
|
perform_longread_hostremoval = true
|
||||||
|
|
|
@ -26,6 +26,9 @@ params {
|
||||||
databases = 'https://raw.githubusercontent.com/nf-core/test-datasets/taxprofiler/database.csv'
|
databases = 'https://raw.githubusercontent.com/nf-core/test-datasets/taxprofiler/database.csv'
|
||||||
perform_shortread_qc = true
|
perform_shortread_qc = true
|
||||||
perform_longread_qc = true
|
perform_longread_qc = true
|
||||||
|
shortread_qc_mergepairs = true
|
||||||
|
longread_qc_skipadaptertrim = false
|
||||||
|
longread_qc_qualityfilter = true
|
||||||
perform_shortread_complexityfilter = true
|
perform_shortread_complexityfilter = true
|
||||||
perform_shortread_hostremoval = true
|
perform_shortread_hostremoval = true
|
||||||
perform_longread_hostremoval = true
|
perform_longread_hostremoval = true
|
||||||
|
|
|
@ -65,11 +65,11 @@ params {
|
||||||
shortread_qc_minlength = 15
|
shortread_qc_minlength = 15
|
||||||
|
|
||||||
perform_longread_qc = false
|
perform_longread_qc = false
|
||||||
longread_qc_run_clip = false
|
longread_qc_skipadaptertrim = false
|
||||||
longread_qc_run_filter = false
|
longread_qc_qualityfilter = false
|
||||||
longread_qc_minlength = 1000
|
longread_qc_qualityfilter_minlength = 1000
|
||||||
longread_qc_keep_percent = 90
|
longread_qc_qualityfilter_keeppercent = 90
|
||||||
longread_qc_target_bases = 500000000
|
longread_qc_qualityfilter_targetbases = 500000000
|
||||||
|
|
||||||
save_preprocessed_reads = false
|
save_preprocessed_reads = false
|
||||||
|
|
||||||
|
|
|
@ -404,21 +404,21 @@
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"default": 30
|
"default": 30
|
||||||
},
|
},
|
||||||
"longread_qc_run_clip": {
|
"longread_qc_skipadaptertrim": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
"longread_qc_run_filter": {
|
"longread_qc_qualityfilter": {
|
||||||
"type": "boolean"
|
"type": "boolean"
|
||||||
},
|
},
|
||||||
"longread_qc_minlength": {
|
"longread_qc_qualityfilter_minlength": {
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"default": 1000
|
"default": 1000
|
||||||
},
|
},
|
||||||
"longread_qc_keep_percent": {
|
"longread_qc_qualityfilter_keeppercent": {
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"default": 90
|
"default": 90
|
||||||
},
|
},
|
||||||
"longread_qc_target_bases": {
|
"longread_qc_qualityfilter_targetbases": {
|
||||||
"type": "integer",
|
"type": "integer",
|
||||||
"default": 500000000
|
"default": 500000000
|
||||||
},
|
},
|
||||||
|
|
|
@ -14,7 +14,7 @@ workflow LONGREAD_PREPROCESSING {
|
||||||
ch_versions = Channel.empty()
|
ch_versions = Channel.empty()
|
||||||
ch_multiqc_files = Channel.empty()
|
ch_multiqc_files = Channel.empty()
|
||||||
|
|
||||||
if ( params.longread_qc_run_clip && !params.longread_qc_run_filter ) {
|
if ( !params.longread_qc_skipadaptertrim && !params.longread_qc_qualityfilter ) {
|
||||||
PORECHOP ( reads )
|
PORECHOP ( reads )
|
||||||
|
|
||||||
ch_processed_reads = PORECHOP.out.reads
|
ch_processed_reads = PORECHOP.out.reads
|
||||||
|
@ -28,7 +28,7 @@ workflow LONGREAD_PREPROCESSING {
|
||||||
ch_versions = ch_versions.mix(PORECHOP.out.versions.first())
|
ch_versions = ch_versions.mix(PORECHOP.out.versions.first())
|
||||||
ch_multiqc_files = ch_multiqc_files.mix( PORECHOP.out.log )
|
ch_multiqc_files = ch_multiqc_files.mix( PORECHOP.out.log )
|
||||||
|
|
||||||
} else if ( !params.longread_qc_run_clip && params.longread_qc_run_filter ) {
|
} else if ( params.longread_qc_skipadaptertrim && params.longread_qc_qualityfilter ) {
|
||||||
|
|
||||||
ch_processed_reads = FILTLONG ( reads.map{ meta, reads -> [meta, [], reads ]} )
|
ch_processed_reads = FILTLONG ( reads.map{ meta, reads -> [meta, [], reads ]} )
|
||||||
ch_versions = ch_versions.mix(FILTLONG.out.versions.first())
|
ch_versions = ch_versions.mix(FILTLONG.out.versions.first())
|
||||||
|
|
|
@ -22,7 +22,7 @@ if (params.databases) { ch_databases = file(params.databases) } else { exit 1, '
|
||||||
|
|
||||||
if (params.shortread_qc_mergepairs && params.run_malt ) log.warn "[nf-core/taxprofiler] MALT does not accept uncollapsed paired-reads. Pairs will be profiled as separate files."
|
if (params.shortread_qc_mergepairs && params.run_malt ) log.warn "[nf-core/taxprofiler] MALT does not accept uncollapsed paired-reads. Pairs will be profiled as separate files."
|
||||||
if (params.shortread_qc_excludeunmerged && !params.shortread_qc_mergepairs) exit 1, "ERROR: [nf-core/taxprofiler] cannot include unmerged reads when merging not turned on. Please specify --shortread_qc_mergepairs"
|
if (params.shortread_qc_excludeunmerged && !params.shortread_qc_mergepairs) exit 1, "ERROR: [nf-core/taxprofiler] cannot include unmerged reads when merging not turned on. Please specify --shortread_qc_mergepairs"
|
||||||
if ( (params.longread_qc_run_clip || params.longread_qc_run_filter) & !params.perform_longread_qc ) exit 1, "ERROR: [nf-core/taxprofiler] --longread_qc_run_clip or --longread_qc_run_filter requested but quality-control not turned on. Please specify --perform_long_qc"
|
if ( (!params.longread_qc_skipadaptertrim || params.longread_qc_qualityfilter) & !params.perform_longread_qc ) exit 1, "ERROR: [nf-core/taxprofiler] --longread_qc_skipadaptertrim false or --longread_qc_qualityfilter requested but quality-control not turned on. Please specify --perform_long_qc"
|
||||||
|
|
||||||
if (params.shortread_complexityfilter_tool == 'fastp' && ( params.perform_shortread_qc == false || params.shortread_qc_tool != 'fastp' )) exit 1, "ERROR: [nf-core/taxprofiler] cannot use fastp complexity filtering if preprocessing not turned on and/or tool is not fastp. Please specify --perform_shortread_qc and/or --shortread_qc_tool 'fastp'"
|
if (params.shortread_complexityfilter_tool == 'fastp' && ( params.perform_shortread_qc == false || params.shortread_qc_tool != 'fastp' )) exit 1, "ERROR: [nf-core/taxprofiler] cannot use fastp complexity filtering if preprocessing not turned on and/or tool is not fastp. Please specify --perform_shortread_qc and/or --shortread_qc_tool 'fastp'"
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue