Genome Assembly ve Haritalama Genome Assembly and Mapping
Kalite kontrolünden geçen ham okumalar, iki farklı yaklaşımla işlenebilir: de novo assembly (referans genomu olmadan) veya referans tabanlı mapping (bilinen bir referans genoma hizalama). Her iki yaklaşım da mikrobiyal genomik çalışmalarında yaygın olarak kullanılmaktadır.
De Novo Genome Assembly
De novo assembly, referans bir genomun yokluğunda kısa veya uzun okumaları birleştirerek yeni bir genomu yeniden inşa etme işlemidir. Ökaryotik ve prokaryotik genomlar için farklı algoritmalar kullanılır.
Assembly Kavramları
- Contig: Çakışan okumalardan oluşturulan kesintisiz DNA dizisi.
- Scaffold: Aralarında boşluk (gap) bulunan birden fazla contigi birleştiren daha büyük yapı.
- N50: Assembly kalitesini değerlendiren istatistik. Toplam assembly uzunluğunun %50'sini kapsayan en kısa contig uzunluğudur. Yüksek N50 daha iyi assembly kalitesini gösterir.
- Kapsama (Coverage/Depth): Genomun her pozisyonunu ortalama kaç okumanın kapladığı. Bakteriler için 30-100× önerilir.
SPAdes — Prokaryotik Assembly
SPAdes, bakteriyel ve viral genomlar için en çok kullanılan de novo assembly aracıdır. Hem Illumina (kısa okuma) hem de hibrit assembly (kısa + uzun okuma) destekler.
conda install -c bioconda spades
# Temel kullanım (Illumina paired-end)
spades.py \
-1 R1_temiz.fastq.gz \
-2 R2_temiz.fastq.gz \
-o spades_cikti/ \
--threads 8
# Hibrit assembly (Illumina + Nanopore)
spades.py \
-1 R1_temiz.fastq.gz \
-2 R2_temiz.fastq.gz \
--nanopore nanopore_okumaları.fastq \
-o hibrit_assembly/
Flye — Uzun Okuma Assembly
Flye, Nanopore ve PacBio uzun okumalarından yüksek kaliteli assembly üretmek için tasarlanmıştır.
conda install -c bioconda flye
# Nanopore okumaları ile assembly
flye \
--nano-raw nanopore_okumaları.fastq \
--out-dir flye_cikti/ \
--genome-size 5m \
--threads 8
# PacBio HiFi okumaları ile assembly
flye \
--pacbio-hifi hifi_okumaları.fastq \
--out-dir flye_cikti/ \
--genome-size 5m
Assembly Kalite Değerlendirmesi — QUAST
conda install -c bioconda quast
quast.py \
assembly.fasta \
-r referans.fasta \
-o quast_sonuclari/ \
--threads 4
QUAST'ın temel çıktıları: N50, L50, toplam assembly uzunluğu, contig sayısı, GC içeriği, genomun kapsama oranı.
Genome Completeness — CheckM
CheckM, bakteriyel ve arkeyal genome assembly'lerinin tamamlanmışlığını ve kontaminasyon oranını değerlendirir.
conda install -c bioconda checkm-genome
checkm lineage_wf \
assembly_klasoru/ \
checkm_sonuclari/ \
-t 8 \
--tab_table -f checkm_ozet.tsv
İyi kaliteli bir draft genome için: >%90 tamamlanmışlık, <%5 kontaminasyon.
Referans Tabanlı Mapping (Read Mapping)
Okumaları bilinen bir referans genoma hizalamak; varyant tespiti, RNA-seq analizi ve metagenomik çalışmalarda kullanılır.
BWA-MEM — Kısa Okuma Hizalama
conda install -c bioconda bwa samtools
# Referans genomu indeksleme
bwa index referans.fasta
# Okumaları hizalama
bwa mem \
referans.fasta \
R1_temiz.fastq.gz \
R2_temiz.fastq.gz \
-t 8 > hizalama.sam
# SAM → BAM dönüşümü ve sıralama
samtools view -bS hizalama.sam | \
samtools sort -o hizalama_sorted.bam
# İndeksleme
samtools index hizalama_sorted.bam
# Kapsama istatistikleri
samtools coverage hizalama_sorted.bam
Minimap2 — Uzun Okuma Hizalama
conda install -c bioconda minimap2
# Nanopore okumalarını hizalama
minimap2 -ax map-ont referans.fasta nanopore_okumaları.fastq | \
samtools sort -o nano_hizalama.bam
samtools index nano_hizalama.bam
SAMtools ile BAM İşleme
# Hizalama istatistikleri
samtools flagstat hizalama.bam
# Ortalama kapsama
samtools depth hizalama.bam | awk '{sum+=$3} END {print sum/NR}'
# Belirli bir bölgeyi görüntüleme
samtools view hizalama.bam "NC_000913.3:1000-5000"
Varyant Tespiti
Referans genoma hizalandıktan sonra SNP (tek nükleotid polimorfizmi) ve indel (ekleme/silme) tespiti yapılabilir.
conda install -c bioconda freebayes
# Freebayes ile varyant tespiti
freebayes -f referans.fasta hizalama.bam > varyantlar.vcf
# VCF filtreleme
bcftools filter -i 'QUAL>20 && DP>10' varyantlar.vcf > filtrelenmis.vcf
Quality-controlled raw reads can be processed in two different ways: de novo assembly (without a reference genome) or reference-based mapping (aligning to a known reference genome). Both approaches are widely used in microbial genomic studies.
De Novo Genome Assembly
De novo assembly is the process of reconstructing a new genome by combining short or long reads in the absence of a reference genome. Different algorithms are used for eukaryotic and prokaryotic genomes.
Assembly Concepts
- Contig: A contiguous DNA sequence constructed from overlapping reads.
- Scaffold: A larger structure joining multiple contigs with gaps between them.
- N50: A statistic for evaluating assembly quality. The length of the shortest contig that covers 50% of the total assembly length. A higher N50 indicates better assembly quality.
- Coverage/Depth: The average number of reads covering each position of the genome. 30–100× is recommended for bacteria.
SPAdes — Prokaryotic Assembly
SPAdes is the most widely used de novo assembly tool for bacterial and viral genomes. It supports both Illumina (short reads) and hybrid assembly (short + long reads).
conda install -c bioconda spades
# Basic usage (Illumina paired-end)
spades.py \
-1 R1_clean.fastq.gz \
-2 R2_clean.fastq.gz \
-o spades_output/ \
--threads 8
# Hybrid assembly (Illumina + Nanopore)
spades.py \
-1 R1_clean.fastq.gz \
-2 R2_clean.fastq.gz \
--nanopore nanopore_reads.fastq \
-o hybrid_assembly/
Flye — Long Read Assembly
conda install -c bioconda flye
# Assembly with Nanopore reads
flye \
--nano-raw nanopore_reads.fastq \
--out-dir flye_output/ \
--genome-size 5m \
--threads 8
# Assembly with PacBio HiFi reads
flye \
--pacbio-hifi hifi_reads.fastq \
--out-dir flye_output/ \
--genome-size 5m
Assembly Quality Assessment — QUAST
conda install -c bioconda quast
quast.py \
assembly.fasta \
-r reference.fasta \
-o quast_results/ \
--threads 4
Key QUAST outputs: N50, L50, total assembly length, contig count, GC content, genome coverage fraction.
Genome Completeness — CheckM
CheckM evaluates the completeness and contamination rate of bacterial and archaeal genome assemblies.
conda install -c bioconda checkm-genome
checkm lineage_wf \
assembly_folder/ \
checkm_results/ \
-t 8 \
--tab_table -f checkm_summary.tsv
For a good quality draft genome: >90% completeness, <5% contamination.
Reference-Based Mapping (Read Mapping)
Aligning reads to a known reference genome is used in variant detection, RNA-seq analysis, and metagenomic studies.
BWA-MEM — Short Read Alignment
conda install -c bioconda bwa samtools
# Index the reference genome
bwa index reference.fasta
# Align reads
bwa mem \
reference.fasta \
R1_clean.fastq.gz \
R2_clean.fastq.gz \
-t 8 > alignment.sam
# SAM → BAM conversion and sorting
samtools view -bS alignment.sam | \
samtools sort -o alignment_sorted.bam
# Index BAM file
samtools index alignment_sorted.bam
# Coverage statistics
samtools coverage alignment_sorted.bam
Minimap2 — Long Read Alignment
conda install -c bioconda minimap2
# Align Nanopore reads
minimap2 -ax map-ont reference.fasta nanopore_reads.fastq | \
samtools sort -o nano_alignment.bam
samtools index nano_alignment.bam
BAM Processing with SAMtools
# Alignment statistics
samtools flagstat alignment.bam
# Average coverage
samtools depth alignment.bam | awk '{sum+=$3} END {print sum/NR}'
# View a specific region
samtools view alignment.bam "NC_000913.3:1000-5000"
Variant Detection
After aligning to a reference genome, SNP (single nucleotide polymorphism) and indel (insertion/deletion) detection can be performed.
conda install -c bioconda freebayes
# Variant calling with Freebayes
freebayes -f reference.fasta alignment.bam > variants.vcf
# VCF filtering
bcftools filter -i 'QUAL>20 && DP>10' variants.vcf > filtered.vcf