Pārlūkot izejas kodu

first commit

master
biolcl pirms 3 gadiem
revīzija
eb11f89560
5 mainītis faili ar 90 papildinājumiem un 0 dzēšanām
  1. +0
    -0
      README.md
  2. +5
    -0
      defaults
  3. +8
    -0
      inputs
  4. +52
    -0
      tasks/filter_vep_annovar.wdl
  5. +25
    -0
      workflow.wdl

+ 0
- 0
README.md Parādīt failu


+ 5
- 0
defaults Parādīt failu

@@ -0,0 +1,5 @@
{
"disk_size":"200",
"filter_vep_annovar_docker":"registry.cn-shanghai.aliyuncs.com/pgx-docker-registry/filter_vep_charger_py:v1",
"filter_vep_annovar_cluster":"OnDemand bcs.ps.r.xlarge img-ubuntu-vpc"
}

+ 8
- 0
inputs Parādīt failu

@@ -0,0 +1,8 @@
{
"{{ project_name }}.sample_id": "{{ sample_id }}",
"{{ project_name }}.vep_vcf": "{{ vep_vcf }}",
"{{ project_name }}.annovar_txt": "{{ annovar_txt }}",
"{{ project_name }}.disk_size": "{{ disk_size }}",
"{{ project_name }}.filter_vep_annovar_docker": "{{ filter_vep_annovar_docker }}",
"{{ project_name }}.filter_vep_annovar_cluster": "{{ filter_vep_annovar_cluster }}"
}

+ 52
- 0
tasks/filter_vep_annovar.wdl Parādīt failu

@@ -0,0 +1,52 @@
task filter_vep_annovar{
String sample_id
File vep_vcf
File annovar_txt

String disk_size
String docker
String cluster

command <<<
set -o pipefail
set -e

mkdir ./output/
mkdir ./prepare/
vep_index=`echo ${vep_vcf}|awk -F "/" '{print $NF}'`
vep_id=`echo ${vep_vcf}|awk -F "/" '{print $NF}'|sed 's/\.vcf//'`
echo ${sample_id}
sed '1,1000s/^#CHROM/CHROM/' ${vep_vcf} |grep -v "#" > prepare/$vep_id.noheader.vcf
python /software/filter_dot.py --vep_vcf prepare/$vep_id.noheader.vcf
sed '1,1000s/^#CHROM/CHROM/' ${vep_vcf} |grep "#" > prepare/$vep_id.header.nodot.vcf
sed '1s/^CHROM/#CHROM/' prepare/$vep_id.noheader.nodot.vcf >> prepare/$vep_id.header.nodot.vcf
perl /software/convert2annovar.pl -format vcf4 ./prepare/$vep_id.header.nodot.vcf -outfile prepare/$vep_index.avinput -allsample -withfreq -include
echo "uid" > ./prepare/$vep_index.avinput_uid.txt
cut -f 1-5 prepare/$vep_index.avinput | sed 's/\t/_/g' >> prepare/$vep_index.avinput_uid.txt
paste prepare/$vep_index.avinput_uid.txt prepare/$vep_id.noheader.nodot.vcf > prepare/$vep_index.add_uid.txt
Rscript /software/filter.R --vep_file prepare/$vep_index.add_uid.txt --annovar_file ${annovar_txt}
python /software/filter.py --uid_list prepare/annovar_uid.txt --vep_vcf prepare/$vep_index.add_uid.txt
sed '1,1000s/^#CHROM/CHROM/' ./prepare/$vep_id.header.nodot.vcf |grep "#" > output/$vep_id.filter.vcf
sed '1s/^CHROM/#CHROM/' prepare/$vep_id.filter_prepare.vcf >> output/$vep_id.filter.vcf
rm output/$vep_id.removed.vcf
>>>
runtime {
docker: docker
cluster: cluster
systemDisk: "cloud_ssd 40"
dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/"
}

output {
Array[File] filter_result=glob("./output/${sample_id}*")
}

}



+ 25
- 0
workflow.wdl Parādīt failu

@@ -0,0 +1,25 @@
import "./tasks/filter_vep_annovar.wdl" as filter_vep_annovar

workflow {{ project_name }} {
String sample_id
File vep_vcf
File annovar_txt

String disk_size
String filter_vep_annovar_docker
String filter_vep_annovar_cluster


call filter_vep_annovar.filter_vep_annovar as filter_vep_annovar {
input:
sample_id=sample_id,
vep_vcf=vep_vcf,
annovar_txt=annovar_txt,
disk_size=disk_size,
docker=filter_vep_annovar_docker,
cluster=filter_vep_annovar_cluster
}


}


Notiek ielāde…
Atcelt
Saglabāt