-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathSnakefile
More file actions
126 lines (92 loc) · 2.96 KB
/
Copy pathSnakefile
File metadata and controls
126 lines (92 loc) · 2.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
shell.prefix = ['set -e']
import os
samples_list, sex_list, sample_sex_dict = [], [], {}
with open(config['samples']) as f:
for line in f:
if not line.strip():
continue
sample = line.strip().split()[0]
sex = line.strip().split()[1]
samples_list.append(sample)
sex_list.append(sex)
sample_sex_dict[sample] = sex
config['sex'] = sample_sex_dict
wildcard_constraints:
sample='|'.join(samples_list)
#load the included snakemake files.
include: "rules/utils.smk"
Call_SR_SNV = config.get("Call_SR_SNV", False)
Call_LR_SNV = config.get("Call_LR_SNV", False)
Merge_SNV = config.get("Merge_SNV", False)
Phase_SNV = config.get("Phase_SNV", False)
Generate_Personal_Reference = config.get("Generate_Personal_Reference", False)
Draft_Assembly = config.get("Draft_Assembly", False)
Construct_Pangenome = config.get("Construct_Pangenome", False)
Simplify_Pangenome = config.get("Simplify_Pangenome", False)
Merge_Pangenome = config.get("Merge_Pangenome", False)
Infer_Diploid_Path = config.get("Infer_Diploid_Path", False)
if Call_SR_SNV:
include: "rules/call_sr_snv.smk"
rule all:
input:
rules.all_call_sr_snv.input
elif Call_LR_SNV:
include: "rules/call_lr_snv.smk"
rule all:
input:
rules.all_call_lr_snv.input
elif Merge_SNV:
include: "rules/merge_snv.smk"
rule all:
input:
rules.all_merge_snv.input
elif Phase_SNV:
include: "rules/phase_snv.smk"
rule all:
input:
rules.all_phase_snv.input
elif Generate_Personal_Reference:
include: "rules/generate_personal_reference.smk"
rule all:
input:
rules.all_generate_personal_reference.input
elif Draft_Assembly:
include: "rules/draft_assembly.smk"
rule all:
input:
rules.all_draft_assembly.input
elif Construct_Pangenome:
include: "rules/construct_pangenome.smk"
rule all:
input:
rules.all_construct_pangenome.input
elif Simplify_Pangenome:
include: "rules/simplify_pangenome.smk"
rule all:
input:
rules.all_simplify_pangenome.input
elif Merge_Pangenome:
include: "rules/merge_pangenome.smk"
rule all:
input:
rules.all_merge_pangenome.input
elif Infer_Diploid_Path:
include: "rules/infer_diploid_path.smk"
rule all:
input:
rules.all_infer_diploid_path.input
else:
include: "rules/call_sr_snv.smk"
include: "rules/call_lr_snv.smk"
include: "rules/merge_snv.smk"
include: "rules/phase_snv.smk"
include: "rules/generate_personal_reference.smk"
include: "rules/draft_assembly.smk"
include: "rules/construct_pangenome.smk"
include: "rules/simplify_pangenome.smk"
include: "rules/merge_pangenome.smk"
include: "rules/infer_diploid_path.smk"
rule all:
input:
rules.all_infer_diploid_path.input
#allow_missing=True