-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathSnakefile_backup
77 lines (59 loc) · 2.22 KB
/
Snakefile_backup
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
"""
Author: Prashant N M
Affiliation: Mount Sinai School of Medicine, Department of Psychiatry
Aim: Snakemake workflow for scRNAseq and snRNAseq supporting multiplexed pools
Date: <mod_date>
Run: indirectly run through run_snakemake.sh
Latest modification:
- Adding multi_module support
Further Plans:
- generalize aligner
- add 'message' for each rule
- add 'log' for each rule
- add 'report' to the pipeline
"""
import os
#from collections import OrderedDict
import glob2, re, math
import pandas as pd
from snakemake.utils import validate
from itertools import repeat
from snakemake.utils import min_version
min_version("6.4.0")
configfile: "new_config.yaml"
#validate(config, "config.schema.json") # Path to the scefic schema
# REMOVE THIS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# Set few global variables (DON'T CHANGE FOR INITIAL RUNS (FOR EACH PROJECT)!)
# FOr subsequent runs on the same project i.e. when there exist previous
# outputs of either demultiplex runs: CHECK THE DOCUMENTATION FOR HOW TO
# CHANGE THESE VARS
class global_vars():
ONLY_SOLO = False
ONLY_VIREO = False
BOTH_DEMUX = False # Not yet implemented the rule
ADD_SOLO = False # When a demultiplex run with vireoSNP has been done
ADD_VIREO = False # When a demultiplex run with calico_solo has been done
SPLIT_BY_SOLO = False # When subset pooled bams by output of calico_solo
SPLIT_BY_VIREO = True # When subset pooled bams by output of vireo
include: "rules/input_processing.smk"
include: "rules/produce_targets.smk"
include: "rules/helper_functions.smk"
include: "rules/resources.smk"
include: "rules/STARsolo.smk"
include: "rules/picard_metrics.smk"
include: "rules/kite.smk"
include: "rules/calico_solo_demux.smk"
# include: "rules/pheno_demux.snkmk" # GOD knows why
# include: "rules/split_fastqs.snkmk" # outdated
# include: "rules/split_fastqs_2.snkmk" # outdated
include: "rules/pheno_demux3.smk"
include: "rules/demultiplex.smk"
include: "rules/split_bams.smk"
# For just gt purposes
# include: "rules/split_bams_gt.snkmk"
# include: "rules/pheno_demux2.snkmk"
include: "rules/identify_swaps.smk"
include: "rules/deeptools.smk"
rule all:
input:
produce_targets(conf_f=config, last_step=config['last_step'], wc_d=wildcards_list)