血液qc
parent
b82438461c
commit
fb96fd356d
|
|
@ -69,9 +69,12 @@ workflow pipeline {
|
|||
input:
|
||||
run=catecode['addAlignment'],
|
||||
tumor=tumor,
|
||||
umi=umi,
|
||||
tumor_rmdup_bam=alignment.tumor_rmdup_bam,
|
||||
tumor_sorted_bam=alignment.tumor_sorted_bam,
|
||||
normal=normal,
|
||||
normal_rmdup_bam=alignment.normal_rmdup_bam,
|
||||
genecore_json=alignment.genecore_json,
|
||||
ref=ref,
|
||||
bed=bed,
|
||||
output_dir=workdir
|
||||
|
|
|
|||
|
|
@ -48,6 +48,7 @@ task markduplicates_genecore {
|
|||
|
||||
output {
|
||||
String rmdup_bam = "${output_dir}/alignment/${name}.rmdup.bam"
|
||||
String genecore_json = "${output_dir}/alignment/${name}_gencore.json"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -202,5 +203,6 @@ workflow alignment {
|
|||
String normal_sorted_bam = "${output_dir}/alignment/${normal}.sorted.bam"
|
||||
String normal_rmdup_bam = "${output_dir}/alignment/${normal}.rmdup.bam"
|
||||
String normal_pileup = "${output_dir}/alignment/${normal}.pileup"
|
||||
String genecore_json = "${output_dir}/alignment/${name}_gencore.json"
|
||||
}
|
||||
}
|
||||
|
|
@ -26,27 +26,78 @@ task run_statistics {
|
|||
}
|
||||
}
|
||||
|
||||
task run_statistics_umi {
|
||||
String name
|
||||
String output_dir
|
||||
String sortedBam
|
||||
String rmdupBam
|
||||
String genecore_json
|
||||
|
||||
String ref
|
||||
String bed
|
||||
|
||||
command {
|
||||
|
||||
if [ ! -d ${output_dir}/qc/${name}_bamdst ];then
|
||||
mkdir -p ${output_dir}/qc/${name}_bamdst
|
||||
mkdir -p ${output_dir}/qc/${name}_sorted_bamdst
|
||||
fi
|
||||
|
||||
samtools flagstat -@ 10 ${rmdupBam} >${output_dir}/qc/${name}.rmdup.flagstat
|
||||
samtools stats --reference ${ref} -t ${bed} -@ 10 ${rmdupBam} > ${output_dir}/qc/${name}.rmdup.stat
|
||||
bamdst -p ${bed} -o ${output_dir}/qc/${name}_bamdst ${rmdupBam}
|
||||
bamdst -p ${bed} -o ${output_dir}/qc/${name}_sorted_bamdst ${sortedBam}
|
||||
|
||||
qc_stat_umi.py ${output_dir}/qc/${name}.json ${output_dir}/qc/${name}_bamdst/ ${output_dir}/qc/${name}_sorted_bamdst/ ${genecore_json} ${output_dir}/qc/${name}_qc.txt
|
||||
|
||||
# InsertAndDepthStat.R \
|
||||
# ${output_dir}/qc/${name}_InsertAndDepthStat \
|
||||
# ${output_dir}/qc/${name}_bamdst/insertsize.plot \
|
||||
# ${output_dir}/qc/${name}_bamdst/depth_distribution.plot
|
||||
}
|
||||
}
|
||||
|
||||
workflow statistics {
|
||||
Boolean run=true
|
||||
|
||||
Boolean umi
|
||||
|
||||
String tumor
|
||||
String tumor_rmdup_bam
|
||||
String tumor_sorted_bam
|
||||
|
||||
String? normal
|
||||
String? normal_rmdup_bam
|
||||
|
||||
String genecore_json
|
||||
|
||||
String ref
|
||||
String bed
|
||||
String output_dir
|
||||
|
||||
if (run) {
|
||||
call run_statistics as runstatistics_tumor {
|
||||
input:
|
||||
name=tumor,
|
||||
output_dir=output_dir,
|
||||
rmdupBam=tumor_rmdup_bam,
|
||||
ref=ref,
|
||||
bed=bed
|
||||
if (umi) {
|
||||
call run_statistics_umi as runstatistics_umi_tumor {
|
||||
input:
|
||||
name=tumor,
|
||||
output_dir=output_dir,
|
||||
rmdupBam=tumor_rmdup_bam,
|
||||
genecore_json=genecore_json,
|
||||
sortedBam=tumor_sorted_bam,
|
||||
ref=ref,
|
||||
bed=bed
|
||||
}
|
||||
}
|
||||
|
||||
if (!umi) {
|
||||
call run_statistics as runstatistics_tumor {
|
||||
input:
|
||||
name=tumor,
|
||||
output_dir=output_dir,
|
||||
rmdupBam=tumor_rmdup_bam,
|
||||
ref=ref,
|
||||
bed=bed
|
||||
}
|
||||
}
|
||||
|
||||
if (defined(normal)) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue