2023-12-28 09:14:58 +08:00
|
|
|
# msi
|
2023-12-25 14:06:30 +08:00
|
|
|
|
2023-12-19 13:37:52 +08:00
|
|
|
task msi_single {
|
|
|
|
|
String name
|
|
|
|
|
String bed
|
|
|
|
|
String output_dir
|
|
|
|
|
String rmdup_bam
|
|
|
|
|
|
|
|
|
|
command <<<
|
|
|
|
|
if [ ! -d ${output_dir}/msi ];then
|
|
|
|
|
mkdir ${output_dir}/msi
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
msisensor2 msi \
|
|
|
|
|
-M /dataseq/jmdna/software/msisensor2/models_hg19_GRCh37 \
|
|
|
|
|
-t ${output_dir}/alignment/${name}.rmdup.bam \
|
|
|
|
|
-e ${bed} \
|
|
|
|
|
-b 10 \
|
|
|
|
|
-o ${output_dir}/msi/${name}.msi.txt
|
|
|
|
|
>>>
|
|
|
|
|
|
|
|
|
|
output {
|
2023-12-25 14:06:30 +08:00
|
|
|
String run_msi_txt = "${output_dir}/msi/${name}.msi.txt"
|
2023-12-19 13:37:52 +08:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
task msi_paired {
|
|
|
|
|
String bed
|
|
|
|
|
String name
|
|
|
|
|
String output_dir
|
|
|
|
|
String tumor_rmdup_bam
|
|
|
|
|
String normal_rmdup_bam
|
|
|
|
|
|
|
|
|
|
command <<<
|
|
|
|
|
if [ ! -d ${output_dir}/msi ];then
|
|
|
|
|
mkdir ${output_dir}/msi
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
msisensor2 msi \
|
|
|
|
|
-d /dataseq/jmdna/software/msisensor2/hg19.microsatellites.list \
|
|
|
|
|
-n ${normal_rmdup_bam} \
|
|
|
|
|
-t ${tumor_rmdup_bam} \
|
|
|
|
|
-e ${bed} \
|
|
|
|
|
-b 10 \
|
|
|
|
|
-o ${output_dir}/msi/${name}.msi.txt
|
2023-12-26 10:18:15 +08:00
|
|
|
|
2023-12-19 13:37:52 +08:00
|
|
|
>>>
|
|
|
|
|
|
|
|
|
|
output {
|
2023-12-25 14:06:30 +08:00
|
|
|
String run_msi_txt = "${output_dir}/msi/${name}.msi.txt"
|
2023-12-19 13:37:52 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
workflow call_msi {
|
|
|
|
|
Boolean run=true
|
|
|
|
|
|
|
|
|
|
String tumor
|
|
|
|
|
String tumor_rmdup_bam
|
|
|
|
|
String? normal
|
|
|
|
|
String? normal_rmdup_bam
|
|
|
|
|
String bed
|
|
|
|
|
String output_dir
|
|
|
|
|
|
|
|
|
|
if (run) {
|
|
|
|
|
# 单样本
|
|
|
|
|
if (!defined(normal)) {
|
|
|
|
|
call msi_single {
|
|
|
|
|
input:
|
|
|
|
|
name=tumor,
|
|
|
|
|
output_dir=output_dir,
|
|
|
|
|
rmdup_bam=tumor_rmdup_bam,
|
|
|
|
|
bed=bed
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
# 双样本
|
|
|
|
|
if (defined(normal)) {
|
|
|
|
|
call msi_paired {
|
|
|
|
|
input:
|
|
|
|
|
name=tumor,
|
|
|
|
|
bed=bed,
|
|
|
|
|
output_dir=output_dir,
|
|
|
|
|
tumor_rmdup_bam=tumor_rmdup_bam,
|
|
|
|
|
normal_rmdup_bam=normal_rmdup_bam
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
output {
|
|
|
|
|
String msi_txt = "${output_dir}/msi/${tumor}.msi.txt"
|
|
|
|
|
}
|
|
|
|
|
}
|