Tagged: tutorial
35 posts found
What FastQC Reports Actually Tell You (And What Beginners Miss)
A senior bioinformatician walks through the FastQC sections that real beginners miss, with screenshots and decisions to make at each step.
STAR vs Salmon vs HISAT2: When To Use Each (With Working Code)
STAR, Salmon, and HISAT2 each have a distinct use case. A practical comparison with working commands, real runtime and memory numbers, and DEG concordance data.
Salmon From FASTQ to Counts: A Complete Pseudoalignment Tutorial
A complete Salmon tutorial with decoy-aware indexing, quantification flags explained, tximport into R, DESeq2 integration, and QC checks at every step.
Differential Expression in Python with PyDESeq2: A Tutorial
PyDESeq2 brings DESeq2 statistics to Python. A complete tutorial covering model fitting, validation against R DESeq2, volcano plots, and enrichment export.
Publication-Ready RNA-Seq Plots in ggplot2: Volcano, Heatmap, PCA
Reviewer-ready RNA-seq plots in R: volcano with gene labels, z-score heatmap with annotation bars, PCA with variance explained, and journal export settings.
ORA vs GSEA: A Side-by-Side Tutorial in R with clusterProfiler
ORA and GSEA answer different questions. A working clusterProfiler tutorial with FDR correction, proper backgrounds, and side-by-side result interpretation.
GTF and GFF Files: Why They Hurt and How To Tame Them
GTF and GFF files from the same database often disagree, prokaryotic files lack exon features, AGAT fixes some and breaks others. A practical field guide.
Your First Nextflow Pipeline for RNA-Seq (Without Losing Your Mind)
A minimal Nextflow DSL2 RNA-seq pipeline in under 80 lines: three processes, channel wiring, Docker config, and how to read the execution report and DAG output.
Reducing GO Term Redundancy: simplify, rrvgo, and What Works
After enrichment you get hundreds of overlapping GO terms. A tutorial on clusterProfiler simplify, rrvgo, REVIGO, and a custom uniqueness-score fallback.
Pathway Enrichment Analysis: GSEA and ORA in R and Python
Tutorial for pathway enrichment analysis: GSEA with clusterProfiler and fgsea in R, ORA with enrichGO, and the Python equivalent using gseapy prerank and enrichr. Covers MSigDB Hallmark, KEGG, and GO sets.
fastp vs Trimmomatic vs BBDuk: A Benchmark on RNA-Seq Reads
A side-by-side benchmark of fastp, Trimmomatic, and BBDuk on paired-end RNA-seq data: speed, post-trim quality, mapping rate, and downstream DEG impact.
DESeq2 Contrasts: Multiple Conditions and Multi-Factor Designs
Three conditions, paired designs, two-factor experiments, and time courses: how to build the design formula, specify contrasts, and avoid common mistakes.
From Count Matrix to Volcano Plot: A DESeq2 Walkthrough in R
A complete DESeq2 tutorial in R: loading counts, building the design formula, running DE, applying lfcShrink, generating a volcano plot, and exporting results.
RNA-Seq Plots: Volcano, MA, and Heatmap in R and Python
Tutorial for publication-ready RNA-seq visualization: volcano plots with ggplot2 and ggrepel, MA plots, and DEG heatmaps with pheatmap and seaborn. Includes 300 dpi export for journals.
Bulk RNA-Seq Deconvolution: CIBERSORTx and MuSiC Tutorial
Estimate cell type proportions from bulk RNA-seq using CIBERSORTx and MuSiC. Reference selection, batch correction, validation, and result interpretation.
Detecting and Correcting Batch Effects in Bulk RNA-Seq
A tutorial on spotting batch effects with PCA, modeling them in DESeq2, and when to reach for ComBat-Seq, RUVSeq, or sva instead. Real code, real plots.
How to Run Differential Expression in Python with PyDESeq2
Complete PyDESeq2 tutorial: build a count matrix from Salmon output, fit a DeseqDataSet, run Wald tests, apply apeGLM shrinkage, and export DEG results in Python. No R required.
How to Run DESeq2 in R: From Salmon Counts to DEG Results
Complete DESeq2 tutorial in R: import Salmon quant.sf files with tximeta, build a DESeqDataSet, run the Wald test, apply apeglm shrinkage, and export a ranked DEG table.
How to Build a Counts Matrix from featureCounts and Salmon in Python
Python tutorial: parse featureCounts output, aggregate Salmon quant.sf files, build a tx2gene map from a GTF, round estimated counts, and save a DESeq2-ready integer count matrix with pandas.
How to Run STAR Alignment for Bulk RNA-Seq (Step-by-Step)
Complete STAR alignment tutorial: download genome and GTF, build a genome index with the right sjdbOverhang, run paired-end alignment, generate GeneCounts, and load counts into R for DESeq2.
How to Build a Salmon Index and Quantify Bulk RNA-Seq Reads
Step-by-step Salmon tutorial: download GENCODE references, build a decoy-aware index, run salmon quant with gcBias and seqBias on all samples, and verify mapping rates before DESeq2.
How to Run FASTQ Quality Control with FastQC, fastp, and MultiQC
Full pipeline tutorial for bulk RNA-seq QC: run FastQC on raw reads, trim adapters with fastp, rerun QC, and aggregate reports with MultiQC. Includes parallel processing and how to read results.
How to Download RNA-Seq Data from GEO and SRA Using sra-tools and pysradb
Step-by-step tutorial for downloading bulk RNA-seq FASTQ files from GEO and SRA. Covers prefetch, fasterq-dump, pysradb metadata extraction, batch downloads, and fixes for common errors.
How to Make Volcano Plots and MA Plots in R: ggplot2 and EnhancedVolcano
Step-by-step R tutorial for publication-quality volcano plots and MA plots from DESeq2 results. Covers ggplot2 from scratch, ggrepel gene labeling, EnhancedVolcano, and plot interpretation.
PCA and Clustering for RNA-Seq QC in Python: Spot Outliers Before DESeq2
Python tutorial: normalize RNA-seq counts, run PCA with scikit-learn, plot interactively with plotly, build a sample distance heatmap, and detect outliers before differential expression.
Differential Expression Analysis in Python with PyDESeq2: A Complete Tutorial
Run DESeq2 differential expression analysis entirely in Python using PyDESeq2. Learn DeseqDataSet, DeseqStats, apeglm shrinkage, multi-factor designs, and pandas result filtering.
How to Run DESeq2: A Complete Walkthrough from Count Matrix to Results
Step-by-step DESeq2 tutorial in R: build a DESeqDataSet, understand size factors and dispersion, run DESeq(), interpret results columns, apply lfcShrink with apeglm, and filter DEGs.
How to Set Up a Bulk RNA-Seq Analysis Environment on Ubuntu and macOS
Step-by-step guide to installing Miniforge, conda, bioconda, R 4.4, and DESeq2 for bulk RNA-seq analysis. Reproducible environments, version pinning, and fixes for common install errors.
How to Quantify RNA-Seq Reads with Salmon: Index, Quant, and Import to R
Step-by-step Salmon RNA-seq tutorial: build a decoy-aware index, run salmon quant on paired-end reads, understand quant.sf output, and import into DESeq2 with tximport.
Importing Salmon Output into R: tximeta, tximport, and DESeq2 Setup
Complete R tutorial for importing Salmon quant.sf files with tximeta and tximport. Build a tx2gene table, fix ID mismatch errors, and set up a DESeqDataSet for multi-factor designs.
STAR vs HISAT2 vs Salmon: Which Aligner Should You Use?
STAR does full genome alignment. HISAT2 uses less memory. Salmon skips alignment entirely. Here is what each approach actually means for your RNA-seq results and when each one is the right call.
What Actually Happens to Your RNA Sample Before It Becomes Data
From tissue extraction to FASTQ file: a clear breakdown of RNA-seq library prep, sequencing chemistry, and what goes wrong at each step.
Trimming Adapters with Trimmomatic and fastp: A Side-by-Side Walkthrough
When adapter trimming helps, when it hurts, and how to run Trimmomatic and fastp on RNA-seq data with the parameter choices that actually matter.
How to Run FastQC and MultiQC on Raw RNA-Seq Reads
A hands-on guide to automating RNA-seq QC across dozens of samples using FastQC and MultiQC, with bash and Python scripts for parsing and flagging failures.
Raw Reads to Counts: The Bulk RNA-Seq Pipeline Explained
A practical breakdown of every computational step in bulk RNA-seq: from FASTQ quality control through trimming, alignment, and quantification to your final count matrix.