mirror of
https://github.com/MillironX/nf-core_modules.git
synced 2024-12-22 11:08:17 +00:00
Update ASCAT module (#1805)
* add unzip alleles + loci * fix the partial absolute prefix path * exchanged deprecated function + added metrics * updated meta * tested logRCorrection + cram input * added BED for WES * added outputs + alleleCounter version * test samtools chr operations, fixed cancerit conda * ch formatting, fasta, bed input * comment out local tests * added metrics, bed, ref_fasta * rm print statement * added stub outputs * rm versions.yml * fix linting * rm fictitious md5sums for stub-run * try fixing top-level of stub versions.yml * ordered inputs alphabetically, ref_fasta -> fasta * rm R system command, adjust meta.yml * prettier yml
This commit is contained in:
parent
e1a3ae6bf5
commit
7daba6a13f
5 changed files with 219 additions and 106 deletions
|
@ -2,7 +2,7 @@ process ASCAT {
|
||||||
tag "$meta.id"
|
tag "$meta.id"
|
||||||
label 'process_medium'
|
label 'process_medium'
|
||||||
|
|
||||||
conda (params.enable_conda ? "bioconda::ascat=3.0.0 bioconda::cancerit-allelecount-4.3.0": null)
|
conda (params.enable_conda ? "bioconda::ascat=3.0.0 bioconda::cancerit-allelecount=4.3.0" : null)
|
||||||
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
|
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
|
||||||
'https://depot.galaxyproject.org/singularity/mulled-v2-c278c7398beb73294d78639a864352abef2931ce:dfe5aaa885de434adb2b490b68972c5840c6d761-0':
|
'https://depot.galaxyproject.org/singularity/mulled-v2-c278c7398beb73294d78639a864352abef2931ce:dfe5aaa885de434adb2b490b68972c5840c6d761-0':
|
||||||
'quay.io/biocontainers/mulled-v2-c278c7398beb73294d78639a864352abef2931ce:dfe5aaa885de434adb2b490b68972c5840c6d761-0' }"
|
'quay.io/biocontainers/mulled-v2-c278c7398beb73294d78639a864352abef2931ce:dfe5aaa885de434adb2b490b68972c5840c6d761-0' }"
|
||||||
|
@ -11,12 +11,18 @@ process ASCAT {
|
||||||
tuple val(meta), path(input_normal), path(index_normal), path(input_tumor), path(index_tumor)
|
tuple val(meta), path(input_normal), path(index_normal), path(input_tumor), path(index_tumor)
|
||||||
path(allele_files)
|
path(allele_files)
|
||||||
path(loci_files)
|
path(loci_files)
|
||||||
|
path(bed_file) // optional
|
||||||
|
path(fasta) // optional
|
||||||
|
path(gc_file) // optional
|
||||||
|
path(rt_file) // optional
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*png"), emit: png
|
tuple val(meta), path("*png"), emit: png
|
||||||
tuple val(meta), path("*cnvs.txt"), emit: cnvs
|
tuple val(meta), path("*cnvs.txt"), emit: cnvs
|
||||||
|
tuple val(meta), path("*metrics.txt"), emit: metrics
|
||||||
tuple val(meta), path("*purityploidy.txt"), emit: purityploidy
|
tuple val(meta), path("*purityploidy.txt"), emit: purityploidy
|
||||||
tuple val(meta), path("*segments.txt"), emit: segments
|
tuple val(meta), path("*segments.txt"), emit: segments
|
||||||
|
tuple val(meta), path("*alleleFrequencies_chr*.txt"), emit: allelefreqs
|
||||||
path "versions.yml", emit: versions
|
path "versions.yml", emit: versions
|
||||||
|
|
||||||
when:
|
when:
|
||||||
|
@ -29,24 +35,30 @@ process ASCAT {
|
||||||
def genomeVersion = args.genomeVersion ? "$args.genomeVersion" : "NULL"
|
def genomeVersion = args.genomeVersion ? "$args.genomeVersion" : "NULL"
|
||||||
def purity = args.purity ? "$args.purity" : "NULL"
|
def purity = args.purity ? "$args.purity" : "NULL"
|
||||||
def ploidy = args.ploidy ? "$args.ploidy" : "NULL"
|
def ploidy = args.ploidy ? "$args.ploidy" : "NULL"
|
||||||
def gc_files = args.gc_files ? "$args.gc_files" : "NULL"
|
def gc_input = gc_file ? "$gc_file" : "NULL"
|
||||||
|
def rt_input = rt_file ? "$rt_file" : "NULL"
|
||||||
|
|
||||||
def minCounts_arg = args.minCounts ? ",minCounts = $args.minCounts" : ""
|
def minCounts_arg = args.minCounts ? ",minCounts = $args.minCounts" : ""
|
||||||
|
def bed_file_arg = bed_file ? ",BED_file = '$bed_file'": ""
|
||||||
def chrom_names_arg = args.chrom_names ? ",chrom_names = $args.chrom_names" : ""
|
def chrom_names_arg = args.chrom_names ? ",chrom_names = $args.chrom_names" : ""
|
||||||
def min_base_qual_arg = args.min_base_qual ? ",min_base_qual = $args.min_base_qual" : ""
|
def min_base_qual_arg = args.min_base_qual ? ",min_base_qual = $args.min_base_qual" : ""
|
||||||
def min_map_qual_arg = args.min_map_qual ? ",min_map_qual = $args.min_map_qual" : ""
|
def min_map_qual_arg = args.min_map_qual ? ",min_map_qual = $args.min_map_qual" : ""
|
||||||
def ref_fasta_arg = args.ref_fasta ? ",ref.fasta = '$args.ref_fasta'" : ""
|
def fasta_arg = fasta ? ",ref.fasta = '$fasta'" : ""
|
||||||
def skip_allele_counting_tumour_arg = args.skip_allele_counting_tumour ? ",skip_allele_counting_tumour = $args.skip_allele_counting_tumour" : ""
|
def skip_allele_counting_tumour_arg = args.skip_allele_counting_tumour ? ",skip_allele_counting_tumour = $args.skip_allele_counting_tumour" : ""
|
||||||
def skip_allele_counting_normal_arg = args.skip_allele_counting_normal ? ",skip_allele_counting_normal = $args.skip_allele_counting_normal" : ""
|
def skip_allele_counting_normal_arg = args.skip_allele_counting_normal ? ",skip_allele_counting_normal = $args.skip_allele_counting_normal" : ""
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
#!/usr/bin/env Rscript
|
#!/usr/bin/env Rscript
|
||||||
library(RColorBrewer)
|
library(RColorBrewer)
|
||||||
library(ASCAT)
|
library(ASCAT)
|
||||||
options(bitmapType='cairo')
|
options(bitmapType='cairo')
|
||||||
|
|
||||||
|
#build prefixes: <abspath_to_files/prefix_chr>
|
||||||
|
allele_path = normalizePath("$allele_files")
|
||||||
|
allele_prefix = paste0(allele_path, "/", "$allele_files", "_chr")
|
||||||
|
|
||||||
|
loci_path = normalizePath("$loci_files")
|
||||||
|
loci_prefix = paste0(loci_path, "/", "$loci_files", "_chr")
|
||||||
|
|
||||||
#prepare from BAM files
|
#prepare from BAM files
|
||||||
ascat.prepareHTS(
|
ascat.prepareHTS(
|
||||||
|
@ -55,16 +67,17 @@ process ASCAT {
|
||||||
tumourname = "Tumour",
|
tumourname = "Tumour",
|
||||||
normalname = "Normal",
|
normalname = "Normal",
|
||||||
allelecounter_exe = "alleleCounter",
|
allelecounter_exe = "alleleCounter",
|
||||||
alleles.prefix = "$allele_files",
|
alleles.prefix = allele_prefix,
|
||||||
loci.prefix = "$loci_files",
|
loci.prefix = loci_prefix,
|
||||||
gender = "$gender",
|
gender = "$gender",
|
||||||
genomeVersion = "$genomeVersion",
|
genomeVersion = "$genomeVersion",
|
||||||
nthreads = $task.cpus
|
nthreads = $task.cpus
|
||||||
$minCounts_arg
|
$minCounts_arg
|
||||||
|
$bed_file_arg
|
||||||
$chrom_names_arg
|
$chrom_names_arg
|
||||||
$min_base_qual_arg
|
$min_base_qual_arg
|
||||||
$min_map_qual_arg
|
$min_map_qual_arg
|
||||||
$ref_fasta_arg
|
$fasta_arg
|
||||||
$skip_allele_counting_tumour_arg
|
$skip_allele_counting_tumour_arg
|
||||||
$skip_allele_counting_normal_arg
|
$skip_allele_counting_normal_arg
|
||||||
)
|
)
|
||||||
|
@ -80,13 +93,25 @@ process ASCAT {
|
||||||
gender = "$gender"
|
gender = "$gender"
|
||||||
)
|
)
|
||||||
|
|
||||||
#optional GC wave correction
|
|
||||||
if(!is.null($gc_files)){
|
|
||||||
ascat.bc = ascat.GCcorrect(ascat.bc, $gc_files)
|
|
||||||
}
|
|
||||||
|
|
||||||
#Plot the raw data
|
#Plot the raw data
|
||||||
ascat.plotRawData(ascat.bc)
|
ascat.plotRawData(ascat.bc, img.prefix = "Before_correction_")
|
||||||
|
|
||||||
|
# optional LogRCorrection
|
||||||
|
if("$gc_input" != "NULL") {
|
||||||
|
gc_input = paste0(normalizePath("$gc_input"), "/", "$gc_input", ".txt")
|
||||||
|
|
||||||
|
if("$rt_input" != "NULL"){
|
||||||
|
rt_input = paste0(normalizePath("$rt_input"), "/", "$rt_input", ".txt")
|
||||||
|
ascat.bc = ascat.correctLogR(ascat.bc, GCcontentfile = gc_input, replictimingfile = rt_input)
|
||||||
|
#Plot raw data after correction
|
||||||
|
ascat.plotRawData(ascat.bc, img.prefix = "After_correction_GC_")
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
ascat.bc = ascat.correctLogR(ascat.bc, GCcontentfile = gc_input, replictimingfile = $rt_input)
|
||||||
|
#Plot raw data after correction
|
||||||
|
ascat.plotRawData(ascat.bc, img.prefix = "After_correction_GC_RT_")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#Segment the data
|
#Segment the data
|
||||||
ascat.bc = ascat.aspcf(ascat.bc)
|
ascat.bc = ascat.aspcf(ascat.bc)
|
||||||
|
@ -106,6 +131,9 @@ process ASCAT {
|
||||||
ascat.output <- ascat.runAscat(ascat.bc, gamma=1)
|
ascat.output <- ascat.runAscat(ascat.bc, gamma=1)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#Extract metrics from ASCAT profiles
|
||||||
|
QC = ascat.metrics(ascat.bc,ascat.output)
|
||||||
|
|
||||||
#Write out segmented regions (including regions with one copy of each allele)
|
#Write out segmented regions (including regions with one copy of each allele)
|
||||||
write.table(ascat.output[["segments"]], file=paste0("$prefix", ".segments.txt"), sep="\t", quote=F, row.names=F)
|
write.table(ascat.output[["segments"]], file=paste0("$prefix", ".segments.txt"), sep="\t", quote=F, row.names=F)
|
||||||
|
|
||||||
|
@ -124,13 +152,17 @@ process ASCAT {
|
||||||
colnames(summary) <- c("AberrantCellFraction","Ploidy")
|
colnames(summary) <- c("AberrantCellFraction","Ploidy")
|
||||||
write.table(summary, file=paste0("$prefix",".purityploidy.txt"), sep="\t", quote=F, row.names=F, col.names=T)
|
write.table(summary, file=paste0("$prefix",".purityploidy.txt"), sep="\t", quote=F, row.names=F, col.names=T)
|
||||||
|
|
||||||
#version export. Have to hardcode process name and software name because
|
write.table(QC, file=paste0("$prefix", ".metrics.txt"), sep="\t", quote=F, row.names=F)
|
||||||
#won't run inside an R-block
|
|
||||||
version_file_path="versions.yml"
|
# version export
|
||||||
f <- file(version_file_path,"w")
|
f <- file("versions.yml","w")
|
||||||
writeLines("ASCAT:", f)
|
alleleCounter_version = system(paste("alleleCounter --version"), intern = T)
|
||||||
writeLines(" ascat: 3.0.0",f)
|
ascat_version = sessionInfo()\$otherPkgs\$ASCAT\$Version
|
||||||
|
writeLines(paste0('"', "$task.process", '"', ":"), f)
|
||||||
|
writeLines(paste(" alleleCounter:", alleleCounter_version), f)
|
||||||
|
writeLines(paste(" ascat:", ascat_version), f)
|
||||||
close(f)
|
close(f)
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
@ -138,17 +170,26 @@ process ASCAT {
|
||||||
def prefix = task.ext.prefix ?: "${meta.id}"
|
def prefix = task.ext.prefix ?: "${meta.id}"
|
||||||
"""
|
"""
|
||||||
echo stub > ${prefix}.cnvs.txt
|
echo stub > ${prefix}.cnvs.txt
|
||||||
|
echo stub > ${prefix}.metrics.txt
|
||||||
echo stub > ${prefix}.purityploidy.txt
|
echo stub > ${prefix}.purityploidy.txt
|
||||||
echo stub > ${prefix}.segments.txt
|
echo stub > ${prefix}.segments.txt
|
||||||
echo stub > Tumour.ASCATprofile.png
|
echo stub > Tumour.ASCATprofile.png
|
||||||
echo stub > Tumour.ASPCF.png
|
echo stub > Tumour.ASPCF.png
|
||||||
echo stub > Tumour.germline.png
|
echo stub > Before_correction_Tumour.germline.png
|
||||||
|
echo stub > After_correction_GC_Tumour.germline.png
|
||||||
echo stub > Tumour.rawprofile.png
|
echo stub > Tumour.rawprofile.png
|
||||||
echo stub > Tumour.sunrise.png
|
echo stub > Tumour.sunrise.png
|
||||||
echo stub > Tumour.tumour.png
|
echo stub > Before_correction_Tumour.tumour.png
|
||||||
|
echo stub > After_correction_GC_Tumour.tumour.png
|
||||||
|
echo stub > Tumour_alleleFrequencies_chr21.txt
|
||||||
|
echo stub > Tumour_alleleFrequencies_chr22.txt
|
||||||
|
echo stub > Normal_alleleFrequencies_chr21.txt
|
||||||
|
echo stub > Normal_alleleFrequencies_chr22.txt
|
||||||
|
|
||||||
echo 'ASCAT:' > versions.yml
|
echo "${task.process}:" > versions.yml
|
||||||
|
echo ' alleleCounter: 4.3.0' >> versions.yml
|
||||||
echo ' ascat: 3.0.0' >> versions.yml
|
echo ' ascat: 3.0.0' >> versions.yml
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,15 @@
|
||||||
name: ascat
|
name: ascat
|
||||||
description: copy number profiles of tumour cells.
|
description: copy number profiles of tumour cells.
|
||||||
keywords:
|
keywords:
|
||||||
- sort
|
- bam
|
||||||
|
- copy number
|
||||||
|
- cram
|
||||||
tools:
|
tools:
|
||||||
- ascat:
|
- ascat:
|
||||||
description: ASCAT is a method to derive copy number profiles of tumour cells, accounting for normal cell admixture and tumour aneuploidy. ASCAT infers tumour purity (the fraction of tumour cells) and ploidy (the amount of DNA per tumour cell), expressed as multiples of haploid genomes from SNP array or massively parallel sequencing data, and calculates whole-genome allele-specific copy number profiles (the number of copies of both parental alleles for all SNP loci across the genome).
|
description: ASCAT is a method to derive copy number profiles of tumour cells, accounting for normal cell admixture and tumour aneuploidy. ASCAT infers tumour purity (the fraction of tumour cells) and ploidy (the amount of DNA per tumour cell), expressed as multiples of haploid genomes from SNP array or massively parallel sequencing data, and calculates whole-genome allele-specific copy number profiles (the number of copies of both parental alleles for all SNP loci across the genome).
|
||||||
homepage: None
|
homepage: None
|
||||||
documentation: None
|
documentation: https://github.com/VanLoo-lab/ascat/tree/master/man
|
||||||
tool_dev_url: https://github.com/Crick-CancerGenomics/ascat
|
tool_dev_url: https://github.com/VanLoo-lab/ascat
|
||||||
doi: "10.1093/bioinformatics/btaa538"
|
doi: "10.1093/bioinformatics/btaa538"
|
||||||
licence: ["GPL v3"]
|
licence: ["GPL v3"]
|
||||||
|
|
||||||
|
@ -26,6 +28,7 @@ input:
|
||||||
"ploidy": (optional),
|
"ploidy": (optional),
|
||||||
"gc_files": (optional),
|
"gc_files": (optional),
|
||||||
"minCounts": (optional),
|
"minCounts": (optional),
|
||||||
|
"BED_file": (optional) but recommended for WES,
|
||||||
"chrom_names": (optional),
|
"chrom_names": (optional),
|
||||||
"min_base_qual": (optional),
|
"min_base_qual": (optional),
|
||||||
"min_map_qual": (optional),
|
"min_map_qual": (optional),
|
||||||
|
@ -43,50 +46,75 @@ input:
|
||||||
e.g. [ id:'test', single_end:false ]
|
e.g. [ id:'test', single_end:false ]
|
||||||
- input_normal:
|
- input_normal:
|
||||||
type: file
|
type: file
|
||||||
description: BAM/CRAM/SAM file
|
description: BAM/CRAM file, must adhere to chr1, chr2, ...chrX notation
|
||||||
pattern: "*.{bam,cram,sam}"
|
For modifying chromosome notation in bam files please follow https://josephcckuo.wordpress.com/2016/11/17/modify-chromosome-notation-in-bam-file/.
|
||||||
|
pattern: "*.{bam,cram}"
|
||||||
- index_normal:
|
- index_normal:
|
||||||
type: file
|
type: file
|
||||||
description: index for normal_bam
|
description: index for normal_bam/cram
|
||||||
pattern: "*.{bai}"
|
pattern: "*.{bai,crai}"
|
||||||
- input_tumor:
|
- input_tumor:
|
||||||
type: file
|
type: file
|
||||||
description: BAM/CRAM/SAM file
|
description: BAM/CRAM file, must adhere to chr1, chr2, ...chrX notation
|
||||||
pattern: "*.{bam,cram,sam}"
|
pattern: "*.{bam,cram}"
|
||||||
- index_tumor:
|
- index_tumor:
|
||||||
type: file
|
type: file
|
||||||
description: index for tumor_bam
|
description: index for tumor_bam/cram
|
||||||
pattern: "*.{bai}"
|
pattern: "*.{bai,crai}"
|
||||||
- allele_files:
|
- allele_files:
|
||||||
type: file
|
type: file
|
||||||
description: allele files for ASCAT. Can be downloaded here https://github.com/VanLoo-lab/ascat/tree/master/ReferenceFiles/WGS
|
description: allele files for ASCAT WGS. Can be downloaded here https://github.com/VanLoo-lab/ascat/tree/master/ReferenceFiles/WGS
|
||||||
- loci_files:
|
- loci_files:
|
||||||
type: file
|
type: file
|
||||||
description: loci files for ASCAT. Can be downloaded here https://github.com/VanLoo-lab/ascat/tree/master/ReferenceFiles/WGS
|
description:
|
||||||
|
loci files for ASCAT WGS. Loci files without chromosome notation can be downloaded here https://github.com/VanLoo-lab/ascat/tree/master/ReferenceFiles/WGS
|
||||||
|
Make sure the chromosome notation matches the bam/cram input files. To add the chromosome notation to loci files (hg19/hg38) if necessary, you can run this command
|
||||||
|
`if [[ $(samtools view <your_bam_file.bam> | head -n1 | cut -f3)\" == *\"chr\"* ]]; then for i in {1..22} X; do sed -i 's/^/chr/' G1000_loci_hg19_chr_${i}.txt; done; fi`
|
||||||
|
- bed_file:
|
||||||
|
type: file
|
||||||
|
description: Bed file for ASCAT WES (optional, but recommended for WES)
|
||||||
|
- fasta:
|
||||||
|
type: file
|
||||||
|
description: Reference fasta file (optional)
|
||||||
|
- gc_file:
|
||||||
|
type: file
|
||||||
|
description: GC correction file (optional) - Used to do logR correction of the tumour sample(s) with genomic GC content
|
||||||
|
- rt_file:
|
||||||
|
type: file
|
||||||
|
description: replication timing correction file (optional, provide only in combination with gc_file)
|
||||||
output:
|
output:
|
||||||
- meta:
|
- meta:
|
||||||
type: map
|
type: map
|
||||||
description: |
|
description: |
|
||||||
Groovy Map containing sample information
|
Groovy Map containing sample information
|
||||||
e.g. [ id:'test', single_end:false ]
|
e.g. [ id:'test', single_end:false ]
|
||||||
- versions:
|
- allelefreqs:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software versions
|
description: Files containing allee frequencies per chromosome
|
||||||
pattern: "versions.yml"
|
pattern: "*{alleleFrequencies_chr*.txt}"
|
||||||
|
- metrics:
|
||||||
|
type: file
|
||||||
|
description: File containing quality metrics
|
||||||
|
pattern: "*.{metrics.txt}"
|
||||||
- png:
|
- png:
|
||||||
type: file
|
type: file
|
||||||
description: ASCAT plots
|
description: ASCAT plots
|
||||||
pattern: "*.{png}"
|
pattern: "*.{png}"
|
||||||
- purityploidy:
|
- purityploidy:
|
||||||
type: file
|
type: file
|
||||||
description: purity and ploidy data
|
description: File with purity and ploidy data
|
||||||
pattern: "*.purityploidy.txt"
|
pattern: "*.{purityploidy.txt}"
|
||||||
- segments:
|
- segments:
|
||||||
type: file
|
type: file
|
||||||
description: segments data
|
description: File with segments data
|
||||||
pattern: "*.segments.txt"
|
pattern: "*.{segments.txt}"
|
||||||
|
- versions:
|
||||||
|
type: file
|
||||||
|
description: File containing software versions
|
||||||
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@aasNGC"
|
- "@aasNGC"
|
||||||
- "@lassefolkersen"
|
- "@lassefolkersen"
|
||||||
- "@FriederikeHanssen"
|
- "@FriederikeHanssen"
|
||||||
- "@maxulysse"
|
- "@maxulysse"
|
||||||
|
- "@SusiJo"
|
||||||
|
|
|
@ -2,10 +2,13 @@
|
||||||
|
|
||||||
nextflow.enable.dsl = 2
|
nextflow.enable.dsl = 2
|
||||||
|
|
||||||
include { ASCAT as ASCAT_SIMPLE} from '../../../modules/ascat/main.nf'
|
include { ASCAT as ASCAT_SIMPLE } from '../../../modules/ascat/main.nf'
|
||||||
include { ASCAT as ASCAT_PLOIDY_AND_PURITY} from '../../../modules/ascat/main.nf'
|
include { ASCAT as ASCAT_PLOIDY_AND_PURITY } from '../../../modules/ascat/main.nf'
|
||||||
include { ASCAT as ASCAT_CRAM} from '../../../modules/ascat/main.nf'
|
include { ASCAT as ASCAT_CRAM } from '../../../modules/ascat/main.nf'
|
||||||
|
include { UNZIP as UNZIP_ALLELES } from '../../../modules/unzip/main.nf'
|
||||||
|
include { UNZIP as UNZIP_LOCI } from '../../../modules/unzip/main.nf'
|
||||||
|
include { UNZIP as UNZIP_GC } from '../../../modules/unzip/main.nf'
|
||||||
|
include { UNZIP as UNZIP_RT } from '../../../modules/unzip/main.nf'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -18,47 +21,93 @@ workflow test_ascat {
|
||||||
file(params.test_data['homo_sapiens']['illumina']['test2_paired_end_sorted_bam_bai'], checkIfExists: true)
|
file(params.test_data['homo_sapiens']['illumina']['test2_paired_end_sorted_bam_bai'], checkIfExists: true)
|
||||||
]
|
]
|
||||||
|
|
||||||
ASCAT_SIMPLE ( input , [], [])
|
ASCAT_SIMPLE ( input , [], [], [], [], [], [])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// extended tests running with 1000 genomes data. Data is downloaded as follows:
|
// extended tests running with 1000 genomes data. Data is downloaded as follows:
|
||||||
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase1/data/HG00154/alignment/HG00154.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam
|
// wget http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase1/data/HG00154/alignment/HG00154.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam
|
||||||
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase1/data/HG00154/alignment/HG00154.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam.bai
|
// wget http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase1/data/HG00154/alignment/HG00154.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam.bai
|
||||||
// wget http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase1/data/HG00155/alignment/HG00155.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam
|
// wget http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase1/data/HG00155/alignment/HG00155.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam
|
||||||
// wget http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase1/data/HG00155/alignment/HG00155.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam.bai
|
// wget http://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase1/data/HG00155/alignment/HG00155.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam.bai
|
||||||
//workflow test_ascat_with_ploidy_and_purity {
|
|
||||||
// input = [
|
|
||||||
// [ id:'test', single_end:false ], // meta map
|
|
||||||
// file("/home/ec2-user/input_files/bams/HG00154.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam", checkIfExists: true),
|
|
||||||
// file("/home/ec2-user/input_files/bams/HG00154.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam.bai", checkIfExists: true),
|
|
||||||
// file("/home/ec2-user/input_files/bams/test2.bam", checkIfExists: true),
|
|
||||||
// file("/home/ec2-user/input_files/bams/test2.bam.bai", checkIfExists: true)
|
|
||||||
// ]
|
|
||||||
//
|
|
||||||
// ASCAT_PLOIDY_AND_PURITY ( input , "/home/ec2-user/input_files/allele_files/G1000_alleles_hg19_chr", "/home/ec2-user/input_files/loci_files/G1000_alleles_hg19_chr")
|
|
||||||
//}
|
|
||||||
|
|
||||||
|
// workflow test_ascat_with_ploidy_and_purity {
|
||||||
|
// input = [ [ id:'test', single_end:false ], // meta map
|
||||||
|
// file("/mnt/volume/ascat/HG00154.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam", checkIfExists: true),
|
||||||
|
// file("/mnt/volume/ascat/HG00154.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam.bai", checkIfExists: true),
|
||||||
|
// file("/mnt/volume/ascat/HG00155.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam", checkIfExists: true),
|
||||||
|
// file("/mnt/volume/ascat/HG00155.mapped.ILLUMINA.bwa.GBR.low_coverage.20101123.bam.bai", checkIfExists: true)
|
||||||
|
// ]
|
||||||
|
|
||||||
|
// allele_path = file("/mnt/volume/repos/modules/test_ascat2/G1000_alleles_hg19.zip", checkIfExists: true)
|
||||||
|
// allele_files = [[ id: allele_path.BaseName ], allele_path ]
|
||||||
|
|
||||||
|
// loci_path = file("/mnt/volume/repos/modules/test_ascat2/G1000_loci_hg19.zip", checkIfExists: true)
|
||||||
|
// loci_files = [[ id: loci_path.BaseName ], loci_path ]
|
||||||
|
|
||||||
|
// gc_path = file("/mnt/volume/repos/modules/test_ascat2/GC_G1000_hg19.zip", checkIfExists: true)
|
||||||
|
// gc_file = [[ id: gc_path.BaseName ], gc_path ]
|
||||||
|
|
||||||
|
// rt_path = file("/mnt/volume/repos/modules/test_ascat2/RT_G1000_hg19.zip", checkIfExists: true)
|
||||||
|
// rt_file = [[ id: rt_path.BaseName ], rt_path ]
|
||||||
|
|
||||||
|
// UNZIP_ALLELES(allele_files)
|
||||||
|
// UNZIP_LOCI(loci_files)
|
||||||
|
// UNZIP_GC(gc_file)
|
||||||
|
|
||||||
|
// ASCAT_PLOIDY_AND_PURITY ( input ,
|
||||||
|
// UNZIP_ALLELES.out.unzipped_archive.map{ it[1] },
|
||||||
|
// UNZIP_LOCI.out.unzipped_archive.map{ it[1] },
|
||||||
|
// [], // optional bed_file for WES
|
||||||
|
// [], // optional fasta
|
||||||
|
// UNZIP_GC.out.unzipped_archive.map{ it[1] }, // optional GC_correction
|
||||||
|
// []) // optional RT_correction
|
||||||
|
|
||||||
|
//
|
||||||
|
|
||||||
|
// }
|
||||||
|
|
||||||
// extended tests running with 1000 genomes data. Data is downloaded as follows:
|
// extended tests running with 1000 genomes data. Data is downloaded as follows:
|
||||||
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00145/alignment/HG00145.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram.crai
|
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00145/alignment/HG00145.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram.crai
|
||||||
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00145/alignment/HG00145.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram
|
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00145/alignment/HG00145.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram
|
||||||
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00146/alignment/HG00146.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram.crai
|
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00146/alignment/HG00146.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram.crai
|
||||||
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00146/alignment/HG00146.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram
|
// wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00146/alignment/HG00146.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram
|
||||||
//workflow test_ascat_with_crams {
|
// workflow test_ascat_with_crams {
|
||||||
// input = [
|
// input = [
|
||||||
// [ id:'test', single_end:false ], // meta map
|
// [ id:'test', single_end:false ], // meta map
|
||||||
// file("/home/ec2-user/input_files/crams/HG00145.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram", checkIfExists: true),
|
// file("/mnt/volume/ascat/HG00145.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram", checkIfExists: true),
|
||||||
// file("/home/ec2-user/input_files/crams/HG00145.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram.crai", checkIfExists: true),
|
// file("/mnt/volume/ascat/HG00145.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram.crai", checkIfExists: true),
|
||||||
// file("/home/ec2-user/input_files/crams/duplicate_test.cram", checkIfExists: true),
|
// file("/mnt/volume/ascat/HG00146.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram", checkIfExists: true),
|
||||||
// file("/home/ec2-user/input_files/crams/duplicate_test.cram.crai", checkIfExists: true)
|
// file("/mnt/volume/ascat/HG00146.mapped.ILLUMINA.bwa.GBR.low_coverage.20120522.bam.cram.crai", checkIfExists: true)
|
||||||
// ]
|
// ]
|
||||||
//
|
|
||||||
// ASCAT_CRAM ( input , "/home/ec2-user/input_files/allele_files/G1000_alleles_hg19_chr", "/home/ec2-user/input_files/loci_files/G1000_alleles_hg19_chr")
|
// allele_path = file("/mnt/volume/repos/modules/test_ascat2/G1000_alleles_hg19.zip", checkIfExists: true)
|
||||||
//}
|
// allele_files = [[ id: allele_path.BaseName ], allele_path ]
|
||||||
|
|
||||||
|
// loci_path = file("/mnt/volume/repos/modules/test_ascat2/G1000_loci_hg19.zip", checkIfExists: true)
|
||||||
|
// loci_files = [[ id: loci_path.BaseName ], loci_path ]
|
||||||
|
|
||||||
|
// gc_path = file("/mnt/volume/repos/modules/test_ascat2/GC_G1000_hg19.zip", checkIfExists: true)
|
||||||
|
// gc_file = [[ id: gc_path.BaseName ], gc_path ]
|
||||||
|
|
||||||
|
// rt_path = file("/mnt/volume/repos/modules/test_ascat2/RT_G1000_hg19.zip", checkIfExists: true)
|
||||||
|
// rt_file = [[ id: rt_path.BaseName ], rt_path ]
|
||||||
|
|
||||||
|
// fasta = file("/mnt/volume/ascat/human_g1k_v37.fasta", checkIfExists: true)
|
||||||
|
|
||||||
|
// UNZIP_ALLELES(allele_files)
|
||||||
|
// UNZIP_LOCI(loci_files)
|
||||||
|
// UNZIP_GC(gc_file)
|
||||||
|
// UNZIP_RT(rt_file)
|
||||||
|
|
||||||
|
// ASCAT_CRAM ( input ,
|
||||||
|
// UNZIP_ALLELES.out.unzipped_archive.map{ it[1] },
|
||||||
|
// UNZIP_LOCI.out.unzipped_archive.map{ it[1] },
|
||||||
|
// [],
|
||||||
|
// fasta,
|
||||||
|
// UNZIP_GC.out.unzipped_archive.map{ it[1] },
|
||||||
|
// UNZIP_RT.out.unzipped_archive.map{ it[1] })
|
||||||
|
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,8 @@ process {
|
||||||
genomeVersion : 'hg19',
|
genomeVersion : 'hg19',
|
||||||
ploidy : '1.7',
|
ploidy : '1.7',
|
||||||
purity : '0.24',
|
purity : '0.24',
|
||||||
chrom_names : 'c("21","22")'
|
chrom_names : 'c("21","22")',
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,7 +31,7 @@ process {
|
||||||
ext.args = [
|
ext.args = [
|
||||||
gender : 'XX',
|
gender : 'XX',
|
||||||
genomeVersion : 'hg19',
|
genomeVersion : 'hg19',
|
||||||
ref_fasta : '/home/ec2-user/input_files/fasta/human_g1k_v37.fasta',
|
ref_fasta : '/mnt/volume/ascat/human_g1k_v37.fasta',
|
||||||
chrom_names : 'c("21","22")'
|
chrom_names : 'c("21","22")'
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,23 +3,17 @@
|
||||||
tags:
|
tags:
|
||||||
- ascat
|
- ascat
|
||||||
files:
|
files:
|
||||||
- path: output/ascat/Tumour.ASCATprofile.png
|
- path: output/ascat/After_correction_GC_Tumour.germline.png
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
- path: output/ascat/After_correction_GC_Tumour.tumour.png
|
||||||
- path: output/ascat/Tumour.ASPCF.png
|
- path: output/ascat/Before_correction_Tumour.germline.png
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
- path: output/ascat/Before_correction_Tumour.tumour.png
|
||||||
- path: output/ascat/Tumour.germline.png
|
- path: output/ascat/Normal_alleleFrequencies_chr21.txt
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
- path: output/ascat/Normal_alleleFrequencies_chr22.txt
|
||||||
- path: output/ascat/Tumour.rawprofile.png
|
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
|
||||||
- path: output/ascat/Tumour.sunrise.png
|
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
|
||||||
- path: output/ascat/Tumour.tumour.png
|
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
|
||||||
- path: output/ascat/test.cnvs.txt
|
- path: output/ascat/test.cnvs.txt
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
|
||||||
- path: output/ascat/test.purityploidy.txt
|
- path: output/ascat/test.purityploidy.txt
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
|
||||||
- path: output/ascat/test.segments.txt
|
- path: output/ascat/test.segments.txt
|
||||||
md5sum: f50b84b1db4b83ba62ec1deacc69c260
|
- path: output/ascat/Tumour_alleleFrequencies_chr21.txt
|
||||||
- path: output/ascat/versions.yml
|
- path: output/ascat/Tumour_alleleFrequencies_chr22.txt
|
||||||
md5sum: 1af20694ec11004c4f8bc0c609b06386
|
- path: output/ascat/Tumour.ASCATprofile.png
|
||||||
|
- path: output/ascat/Tumour.rawprofile.png
|
||||||
|
- path: output/ascat/Tumour.sunrise.png
|
||||||
|
|
Loading…
Reference in a new issue