Browse Source

first commit

master
LUYAO REN 5 years ago
commit
f0f76895a0
7 changed files with 180 additions and 0 deletions
  1. BIN
      codescripts/.DS_Store
  2. +15
    -0
      codescripts/merge_mendelian_vot.py
  3. +15
    -0
      inputs
  4. BIN
      tasks/.DS_Store
  5. +27
    -0
      tasks/MIEpos2bed.wdl
  6. +74
    -0
      tasks/bedCoverage.wdl
  7. +49
    -0
      workflow.wdl

BIN
codescripts/.DS_Store View File


+ 15
- 0
codescripts/merge_mendelian_vot.py View File

@@ -0,0 +1,15 @@
import pandas as pd
import sys, argparse, os

men = pd.read_table(sys.argv[1],header=None)
vote = pd.read_table(sys.argv[2],low_memory=False)
mut = pd.read_table(sys.argv[3],header=None)

merged_df = pd.merge(vote, men, how='inner', left_on=['CHROM','POS'], right_on = [0,1])
merged_df['mendelian_check'] = 'MIE'
merged_df.loc[merged_df[2]=='1:1:1','mendelian_check'] = 'MP'
sub = merged_df[['CHROM','POS','LCL5_detected_num','mendelian_check',2]]
sub.columns=['CHROM','POS','detected_num','mendelian','detail']
genotype_sub = pd.merge(sub, mut, how='inner', left_on=["CHROM","POS"], right_on = [0,1])
genotype_sub = genotype_sub[['CHROM','POS','detected_num','mendelian','detail',2,3]]
genotype_sub.to_csv(sys.argv[4],header=0,sep="\t",index=0)

+ 15
- 0
inputs View File

@@ -0,0 +1,15 @@
{
"{{ project_name }}.right_200": "oss://pgx-result/renluyao/manuscript/small_variants_near_SV/chr6.ins.right.200",
"{{ project_name }}.left_100": "oss://pgx-result/renluyao/manuscript/small_variants_near_SV/chr6.ins.left.100",
"{{ project_name }}.disk_size": "100",
"{{ project_name }}.right_50": "oss://pgx-result/renluyao/manuscript/small_variants_near_SV/chr6.ins.right.50",
"{{ project_name }}.chromo": "chr6",
"{{ project_name }}.right_150": "oss://pgx-result/renluyao/manuscript/small_variants_near_SV/chr6.ins.right.150",
"{{ project_name }}.inputSamplesFile": "{{ inputSamplesFile }}",
"{{ project_name }}.right_100": "oss://pgx-result/renluyao/manuscript/small_variants_near_SV/chr6.ins.right.100",
"{{ project_name }}.left_150": "oss://pgx-result/renluyao/manuscript/small_variants_near_SV/chr6.ins.left.150",
"{{ project_name }}.docker": "registry-internal.cn-shanghai.aliyuncs.com/pgx-docker-registry/bedtools:v2.27.1",
"{{ project_name }}.left_200": "oss://pgx-result/renluyao/manuscript/small_variants_near_SV/chr6.ins.left.200",
"{{ project_name }}.left_50": "oss://pgx-result/renluyao/manuscript/small_variants_near_SV/chr6.ins.left.50",
"{{ project_name }}.cluster_config": "OnDemand bcs.a2.large img-ubuntu-vpc"
}

BIN
tasks/.DS_Store View File


+ 27
- 0
tasks/MIEpos2bed.wdl View File

@@ -0,0 +1,27 @@
task MIEpos2bed {
File mie_file
String chromo
String sample_name
String docker
String cluster_config
String disk_size
command <<<

cat ${mie_file} | awk '{print $1,$2,$2}' > ${sample_name}.${chromo}.allvariants.bed

cat ${mie_file} | grep -v '1:1:1' | awk '{print $1,$2,$2}' > ${sample_name}.${chromo}.mie.bed

>>>

runtime {
docker:docker
cluster: cluster_config
systemDisk: "cloud_ssd 40"
dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/"
}
output {
File mie_bed = "${sample_name}.${chromo}.mie.bed"
File all_bed = "${sample_name}.${chromo}.allvariants.bed"
}
}

+ 74
- 0
tasks/bedCoverage.wdl View File

@@ -0,0 +1,74 @@
task bedCoverage {
File mie_bed
File all_bed
File left_50
File left_100
File left_150
File left_200
File right_50
File right_100
File right_150
File right_200
String sample_name
String chromo
String docker
String cluster_config
String disk_size
command <<<

## MIE
/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${left_50} -b ${mie_bed} -counts | cut -f4 > ${sample_name}.${chromo}.mie.left50.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${left_100} -b ${mie_bed} -counts | cut -f4 > ${sample_name}.${chromo}.mie.left100.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${left_150} -b ${mie_bed} -counts | cut -f4 > ${sample_name}.${chromo}.mie.left150.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${left_200} -b ${mie_bed} -counts | cut -f4 > ${sample_name}.${chromo}.mie.left200.coverage.txt


/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${right_50} -b ${mie_bed} -counts | cut -f4 > ${sample_name}.${chromo}.mie.right50.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${right_100} -b ${mie_bed} -counts | cut -f4 > ${sample_name}.${chromo}.mie.right100.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${right_150} -b ${mie_bed} -counts | cut -f4 > ${sample_name}.${chromo}.mie.right150.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${right_200} -b ${mie_bed} -counts | cut -f4 > ${sample_name}.${chromo}.mie.right200.coverage.txt

paste ${sample_name}.${chromo}.mie.left50.coverage.txt ${sample_name}.${chromo}.mie.left100.coverage.txt ${sample_name}.${chromo}.mie.left150.coverage.txt ${sample_name}.${chromo}.mie.left200.coverage.txt ${sample_name}.${chromo}.mie.right50.coverage.txt ${sample_name}.${chromo}.mie.right100.coverage.txt ${sample_name}.${chromo}.mie.right150.coverage.txt ${sample_name}.${chromo}.mie.right200.coverage.txt > ${sample_name}.${chromo}.mie.coverage.txt

# all variants

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${left_50} -b ${all_bed} -counts | cut -f4 > ${sample_name}.${chromo}.all.left50.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${left_100} -b ${all_bed} -counts | cut -f4 > ${sample_name}.${chromo}.all.left100.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${left_150} -b ${all_bed} -counts | cut -f4 > ${sample_name}.${chromo}.all.left150.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${left_200} -b ${all_bed} -counts | cut -f4 > ${sample_name}.${chromo}.all.left200.coverage.txt


/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${right_50} -b ${all_bed} -counts | cut -f4 > ${sample_name}.${chromo}.all.right50.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${right_100} -b ${all_bed} -counts | cut -f4 > ${sample_name}.${chromo}.all.right100.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${right_150} -b ${all_bed} -counts | cut -f4 > ${sample_name}.${chromo}.all.right150.coverage.txt

/opt/ccdg/bedtools-2.27.1/bin/bedtools coverage -a ${right_200} -b ${all_bed} -counts | cut -f4 > ${sample_name}.${chromo}.all.right200.coverage.txt

paste ${sample_name}.${chromo}.all.left50.coverage.txt ${sample_name}.${chromo}.all.left100.coverage.txt ${sample_name}.${chromo}.all.left150.coverage.txt ${sample_name}.${chromo}.all.left200.coverage.txt ${sample_name}.${chromo}.all.right50.coverage.txt ${sample_name}.${chromo}.all.right100.coverage.txt ${sample_name}.${chromo}.all.right150.coverage.txt ${sample_name}.${chromo}.all.right200.coverage.txt > ${sample_name}.${chromo}.all.coverage.txt


>>>

runtime {
docker:docker
cluster: cluster_config
systemDisk: "cloud_ssd 40"
dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/"
}
output {
File mie = "${sample_name}.${chromo}.mie.coverage.txt"
File all = "${sample_name}.${chromo}.all.coverage.txt"
}
}

+ 49
- 0
workflow.wdl View File

@@ -0,0 +1,49 @@
import "./tasks/MIEpos2bed.wdl" as MIEpos2bed
import "./tasks/bedCoverage.wdl" as bedCoverage

workflow {{ project_name }} {
File inputSamplesFile
Array[Array[File]] inputSamples = read_tsv(inputSamplesFile)
File left_50
File left_100
File left_150
File left_200
File right_50
File right_100
File right_150
File right_200
String chromo
String docker
String cluster_config
String disk_size

scatter (sample in inputSamples){
call MIEpos2bed.MIEpos2bed as MIEpos2bed {
input:
mie_file=sample[0],
chromo=chromo,
sample_name=sample[1],
docker=docker,
cluster_config=cluster_config,
disk_size=disk_size
}
call bedCoverage.bedCoverage as bedCoverage {
input:
mie_bed=MIEpos2bed.mie_bed,
all_bed=MIEpos2bed.all_bed,
left_50=left_50,
left_100=left_100,
left_150=left_150,
left_200=left_200,
right_50=right_50,
right_100=right_100,
right_150=right_150,
right_200=right_200,
sample_name=sample[1],
chromo=chromo,
docker=docker,
cluster_config=cluster_config,
disk_size=disk_size
}
}
}

Loading…
Cancel
Save