-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathSnakefile
More file actions
65 lines (52 loc) · 3.06 KB
/
Snakefile
File metadata and controls
65 lines (52 loc) · 3.06 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
#Required python modules
import os
import pandas as pd
##Input file
configfile: "config.yaml"
list_files = pd.read_table(config['list_files'],index_col=0)
SAMPLES = list(list_files.index)
myoutput = list()
if config['primer_removal'] == True and config['primer_investigation'] == True:
myoutput.append(config["output_dir"] + "/seqkit_samples/" + "temp_primerRMV.txt")
myoutput.append(config["output_dir"] + "/primer_status/primer_existance_raw.csv")
myoutput.append(config["output_dir"] + "/primer_status/primer_existance_trimmed.csv")
rule all:
input:
config["output_dir"]+"/figures/length_distribution/Sequence_Length_distribution.png",
config["output_dir"]+"/figures/quality/afterQCQualityPlots"+ config["forward_read_suffix"]+".png",
config["output_dir"]+"/figures/quality/afterQCQualityPlots"+ config["reverse_read_suffix"]+".png",
config["output_dir"]+"/figures/quality/rawFilterQualityPlots"+ config["forward_read_suffix"]+".png",
config["output_dir"]+"/figures/quality/rawFilterQualityPlots"+ config["reverse_read_suffix"]+".png",
config["output_dir"]+"/figures/quality/afterdada2FilterQualityPlots"+ config["forward_read_suffix"]+".png",
config["output_dir"]+"/figures/quality/afterdada2FilterQualityPlots"+ config["reverse_read_suffix"]+".png",
expand(config["output_dir"]+"/taxonomy/dada2_tables/{ref}_RDP.tsv",ref= config['RDP_dbs'].keys()),
config["output_dir"]+"/dada2/Nreads.tsv",
config["output_dir"]+"/phylogeny/ASV_aligned.fasta",
config["output_dir"]+"/phylogeny/ASV_tree.nwk",
config["output_dir"]+"/dada2/Nreads_filtered.txt",
config["output_dir"]+"/dada2/percent_phix.txt",
config["output_dir"]+"/multiqc_filt/multiqc_report_filtered.html",
config["output_dir"]+"/multiqc_raw/multiqc_report_raw.html",
config["output_dir"]+"/seqkit_samples/"+"temp_raw.txt",
config["output_dir"]+"/seqkit_samples/"+"temp_dada2.txt",
config["output_dir"]+"/seqkit_samples/"+"temp_cutadapt.txt",
config["output_dir"]+"/QC_html_report/"+"qc_report.html",
config["output_dir"]+"/taxonomy/dada2_tables/"+"dada2_all_databases_merged.csv",
config["output_dir"]+"/vsearch/Final_uncollapsed_output.tsv",
config["output_dir"]+"/vsearch/Final_colapsed_output.tsv",
config["output_dir"]+"/taxonomy/vsearch_tables/Vsearch_output.tsv",
config["output_dir"]+"/taxonomy/final_merged_tables/vsearch_dada2_merged.tsv",
config["output_dir"]+"/fasta_files/ASVs_id.fasta",
config["output_dir"]+"/fasta_files/ASVs_tax.fasta",
config["output_dir"]+"/fasta_files/ASVs_seqs.fasta",
myoutput
##path to where different snakemake rule files are saved
include: "utils/rules/filtNs.smk"
include: "utils/rules/qc_cutadapt.smk"
include: "utils/rules/dada2.smk"
include: "utils/rules/phylo_tree.smk"
include: "utils/rules/readCount.smk"
include: "utils/rules/seqkit_length_report.smk"
include: "utils/rules/annotation_output_dada2.smk"
include: "utils/rules/vsearch.smk"
include: "utils/rules/qc_report.smk"