Я пишу код для рабочего процесса Nextflow, который использует groovy.
У меня есть конфигурационный файл JSON с такими параметрами:
"barcodes": {
"004F--004R": {
"laa_params": {
"--minLength": "5000",
"--ignoreEnds": "60",
"--maxReads": "2500",
"--maxPhasingReads": "500"
}
},
"014F--014R": {
"laa_params": {
"--minLength": "5000",
"--ignoreEnds": "60",
"--maxReads": "2500",
"--maxPhasingReads": "500"
}
},
И мне нужно сделать карту штрих-кода: laa_params. В настоящее время я делаю это с помощью:
transform_barcodes = barcodes.flatMap { it -> [it] }
results = transform_barcodes.flatMap { it -> [ [it, analysis_config.barcodes[it].laa_params] ] }
И это дает мне следующие результаты:
DataflowQueue(queue=[DataflowVariable(value=[004F--004R, {--minLength=5000, --ignoreEnds=60, --maxReads=2500, --maxPhasingReads=500}]), DataflowVariable(value=[014F--014R, {--minLength=5000, --ignoreEnds=60, --maxReads=2500, --maxPhasingReads=500}]),...
В конечном итоге мне нужно:
[004F--004R, {--minLength 5000, --ignoreEnds 60, --maxReads 2500, --maxPhasingReads 500}]
Как я могу сделать это так? Я новичок в groovy, но, вероятно, просто сделаю for-l oop поверх карты и замените = на ""? Любая помощь будет оценена!