Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
snakemake-tutorial
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
2
Issues
2
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Requirements
Requirements
List
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Operations
Operations
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issue
Repository
Value Stream
Wiki
Wiki
External Wiki
External Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
R3
school
snakemake-tutorial
Commits
950f3c28
Commit
950f3c28
authored
May 14, 2020
by
Sarah Peter
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Solution for QC exercises
parent
f13d3a4f
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
79 additions
and
0 deletions
+79
-0
src/05_qc/Snakefile
src/05_qc/Snakefile
+69
-0
src/05_qc/envs/fastqc.yaml
src/05_qc/envs/fastqc.yaml
+5
-0
src/05_qc/envs/picard.yaml
src/05_qc/envs/picard.yaml
+5
-0
No files found.
src/05_qc/Snakefile
0 → 100644
View file @
950f3c28
SAMPLE = "TC1-ST2-D0.12"
rule all:
input: f"output/{SAMPLE}_peaks.narrowPeak", f"output/{SAMPLE}_control_lambda.bigwig", f"output/{SAMPLE}_treat_pileup.bigwig", f"output/H3K4-{SAMPLE}_fastqc.html", f"output/INPUT-{SAMPLE}_fastqc.html", f"output/alignment_metrics_H3K4-{SAMPLE}.txt", f"output/alignment_metrics_INPUT-{SAMPLE}.txt"
rule mapping:
input: "chip-seq/{sample}.fastq.gz"
output: "bowtie2/{sample}.bam"
params:
idx = "reference/Mus_musculus.GRCm38.dna_sm.chromosome.12"
log: "logs/bowtie2_{sample}.log"
benchmark: "benchmarks/mapping/{sample}.tsv"
conda: "envs/bowtie2.yaml"
shell:
"""
bowtie2 -x {params.idx} -U {input} 2> {log} | \
samtools sort - > {output}
samtools index {output}
"""
rule peak_calling:
input:
control = "bowtie2/INPUT-{sample}.bam",
chip = "bowtie2/H3K4-{sample}.bam"
output:
peaks = "output/{sample}_peaks.narrowPeak",
control_bdg = "macs2/{sample}_control_lambda.bdg",
chip_bdg = "macs2/{sample}_treat_pileup.bdg"
conda: "envs/macs2.yaml"
shell:
"""
macs2 callpeak -t {input.chip} -c {input.control} -f BAM -g mm -n {wildcards.sample} -B -q 0.01 --outdir macs2
cp macs2/{wildcards.sample}_peaks.narrowPeak {output.peaks}
"""
rule bigwig:
input: "macs2/{sample}.bdg"
output: "output/{sample}.bigwig"
params:
idx = "reference/Mus_musculus.GRCm38.dna_sm.chromosome.12.fa.fai"
conda: "envs/ucsc.yaml"
shell:
"""
bedGraphToBigWig {input} {params.idx} {output}
"""
rule fastqc:
input: "chip-seq/{sample}.fastq.gz"
output:
html = "output/{sample}_fastqc.html",
zip = "chip-seq/{sample}_fastqc.zip"
conda: "envs/fastqc.yaml"
shell:
"""
fastqc {input}
cp chip-seq/{wildcards.sample}_fastqc.html {output.html}
"""
rule alignment_metrics:
input: "bowtie2/{sample}.bam"
output: "output/alignment_metrics_{sample}.txt"
params:
idx = "reference/Mus_musculus.GRCm38.dna_sm.chromosome.12.fa"
conda: "envs/picard.yaml"
shell:
"""
picard CollectAlignmentSummaryMetrics R={params.idx} I={input} O={output}
"""
src/05_qc/envs/fastqc.yaml
0 → 100644
View file @
950f3c28
name
:
fastqc
channels
:
-
bioconda
dependencies
:
-
fastqc
src/05_qc/envs/picard.yaml
0 → 100644
View file @
950f3c28
name
:
fastqc
channels
:
-
bioconda
dependencies
:
-
picard
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment