Skip to content

Commit

Permalink
fix collect sites
Browse files Browse the repository at this point in the history
  • Loading branch information
Zilong-Li committed Jun 22, 2023
1 parent a33527a commit 7c2fefd
Show file tree
Hide file tree
Showing 5 changed files with 41 additions and 20 deletions.
6 changes: 1 addition & 5 deletions workflow/rules/accuracy.smk
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,7 @@
rule collect_truth_gts:
"""would be better to use sites in subrefs"""
input:
sites=lambda wildcards: expand(
rules.subset_refpanel.output.sites,
size=config["refsize"],
allow_missing=True,
),
sites=rules.concat_refpanel_sites_by_region2.output.sites,
output:
gt=os.path.join(OUTDIR_PANEL, "truth.gts.{chrom}.txt"),
af=os.path.join(OUTDIR_PANEL, "af.input.panel.{chrom}.txt"),
Expand Down
2 changes: 1 addition & 1 deletion workflow/rules/common.smk
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ def get_all_results():

def get_subset_refs():
return expand(
rules.subset_refpanel.output,
rules.subset_refpanel_by_region2.output,
chrom=config["chroms"],
size=config["refsize"],
)
Expand Down
8 changes: 4 additions & 4 deletions workflow/rules/glimpse.smk
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@

rule glimpse2_prepare_panel:
input:
refvcf=rules.subset_refpanel.output.vcf,
refvcf=rules.subset_refpanel_by_region2.output.vcf,
output:
os.path.join(OUTDIR_GLIMPSE2, "bin", "{chrom}.size{size}.chunks{chunkid}.bin"),
log:
Expand Down Expand Up @@ -149,12 +149,12 @@ rule glimpse_prepare_glvcf:
input:
bams=rules.bamlist.output,
sites=lambda wildcards: expand(
rules.subset_refpanel.output.sites,
rules.subset_refpanel_by_region2.output.sites,
size=config["refsize"],
allow_missing=True,
),
tsv=lambda wildcards: expand(
rules.subset_refpanel.output.tsv,
rules.subset_refpanel_by_region2.output.tsv,
size=config["refsize"],
allow_missing=True,
),
Expand Down Expand Up @@ -184,7 +184,7 @@ rule glimpse_prepare_glvcf:

rule glimpse_phase:
input:
refvcf=rules.subset_refpanel.output.vcf,
refvcf=rules.subset_refpanel_by_region2.output.vcf,
glvcf=rules.glimpse_prepare_glvcf.output.vcf,
output:
temp(
Expand Down
16 changes: 8 additions & 8 deletions workflow/rules/quilt.smk
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@

rule quilt_prepare_regular:
input:
vcf=rules.subset_refpanel.output.vcf,
# hap=rules.subset_refpanel.output.hap,
# leg=rules.subset_refpanel.output.leg,
vcf=rules.subset_refpanel_by_region2.output.vcf,
# hap=rules.subset_refpanel_by_region2.output.hap,
# leg=rules.subset_refpanel_by_region2.output.leg,
output:
os.path.join(
OUTDIR_PANEL,
Expand Down Expand Up @@ -72,7 +72,7 @@ rule quilt_prepare_regular:

rule quilt_prepare_mspbwt:
input:
vcf=rules.subset_refpanel.output.vcf,
vcf=rules.subset_refpanel_by_region2.output.vcf,
output:
os.path.join(
OUTDIR_PANEL,
Expand Down Expand Up @@ -144,7 +144,7 @@ rule quilt_prepare_mspbwt:

rule quilt_prepare_zilong:
input:
vcf=rules.subset_refpanel.output.vcf,
vcf=rules.subset_refpanel_by_region2.output.vcf,
output:
os.path.join(
OUTDIR_PANEL,
Expand Down Expand Up @@ -221,7 +221,7 @@ rule quilt_prepare_zilong:

rule quilt_run_regular:
input:
vcf=rules.subset_refpanel.output.vcf,
vcf=rules.subset_refpanel_by_region2.output.vcf,
bams=rules.bamlist.output,
rdata=rules.quilt_prepare_regular.output,
output:
Expand Down Expand Up @@ -325,7 +325,7 @@ rule quilt_ligate_regular:

rule quilt_run_mspbwt:
input:
vcf=rules.subset_refpanel.output.vcf,
vcf=rules.subset_refpanel_by_region2.output.vcf,
bams=rules.bamlist.output,
rdata=rules.quilt_prepare_mspbwt.output,
output:
Expand Down Expand Up @@ -429,7 +429,7 @@ rule quilt_ligate_mspbwt:

rule quilt_run_zilong:
input:
vcf=rules.subset_refpanel.output.vcf,
vcf=rules.subset_refpanel_by_region2.output.vcf,
bams=rules.bamlist.output,
rdata=rules.quilt_prepare_zilong.output,
output:
Expand Down
29 changes: 27 additions & 2 deletions workflow/rules/refpanels.smk
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ rule subset_refpanel_by_chrom:
"""


rule subset_refpanel:
rule subset_refpanel_by_region2:
input:
rules.subset_sample_list.output.samples,
output:
Expand All @@ -63,7 +63,7 @@ rule subset_refpanel:
OUTDIR_PANEL, "panelsize{size}", "vcfs" "{chrom}.{start}.{end}.tsv.vcf.gz"
),
params:
N="subset_refpanel",
N="subset_refpanel_by_region2",
prefix=lambda wildcards, output: os.path.splitext(output[0])[0],
vcf=lambda wildcards: REFPANEL[wildcards.chrom]["vcf"],
start=lambda wildcards: max(1, wildcards.start - config["glimpse"]["buffer"]),
Expand All @@ -83,3 +83,28 @@ rule subset_refpanel:
bcftools query -f'%CHROM\t%POS\t%REF,%ALT\n' {output.sites} | bgzip -c > {output.tsv} && tabix -s1 -b2 -e2 {output.tsv}
) &> {log}
"""


rule concat_refpanel_sites_by_region2:
input:
rules.subset_refpanel_by_region2.output.sites,
output:
sites=os.path.join(
OUTDIR_PANEL,
"panelsize{size}",
"vcfs" "{chrom}.sites.vcf.gz",
),
tsv=os.path.join(OUTDIR_PANEL, "panelsize{size}", "vcfs" "{chrom}.tsv.vcf.gz"),
log:
os.path.join(
OUTDIR_PANEL, "panelsize{size}", "vcfs" "{chrom}.sites.vcf.gz.llog"
),
conda:
"../envs/pandas.yaml"
shell:
"""
( \
bcftools concat -D --threads 4 -Oz -o {output.sites} {input} && bcftools index -f {output.sites} \
bcftools query -f'%CHROM\t%POS\t%REF,%ALT\n' {output.sites} | bgzip -c > {output.tsv} && tabix -s1 -b2 -e2 {output.tsv}
) & > {log}
"""

0 comments on commit 7c2fefd

Please sign in to comment.