How to Analyze Your Own Whole-Genome Sequencing Data
A working pipeline for taking 30x PCR-free FASTQs to aligned CRAM, a filtered and annotated variant set, structural variants, and the QC numbers that tell you whether any of it is trustworthy.
A working pipeline for taking 30x PCR-free FASTQs to aligned CRAM, a filtered and annotated variant set, structural variants, and the QC numbers that tell you whether any of it is trustworthy.
A clinical whole-genome sequencing report is a short curated document about a handful of variants. The FASTQ, CRAM, and VCF behind it contain roughly four to five million. Here is what each one gives you and how to work with the data yourself.
How CLIA certification, performance specification validation and personnel qualifications apply to a laboratory before it reports a patient test result.
A practical guide to loading your own whole-genome alignments, variant calls, and RNA coverage into a local genome browser, indexing the files correctly, and querying annotation programmatically instead of clicking through a web UI.
Hemoglobin is a concentration, not a mass, and that fact explains most of the confusion around a single result. Here is what the assay does, how much of a change is real, and what to pair it with.
MCHC is a computed ratio of hemoglobin to hematocrit, and most high values are analyzer artifacts rather than biology. How to tell the difference using your own CBC history, and the few red cell conditions that genuinely raise it.
A working pipeline that turns 30x whole-genome FASTQs into a filtered and benchmarked VCF, plus what changes when the variants are somatic.
A practical map of omics data types, the public databases worth querying, and how to structure your own multi-omics data so annotation queries return something useful.
Where polygenic tests come from, how to compute scores yourself from a VCF, and the failure modes that silently corrupt a score.
A working guide to downloading ClinVar, matching it against your own VCF with bcftools, reading review-status stars correctly, and re-checking your variants as classifications change.
A practical pipeline for taking raw DNA data — array export, VCF, or CRAM — and turning it into something you can query, annotate, and trust, plus what the file cannot tell you.
A working guide to loading your own BAM/CRAM, VCF, and RNA-seq files into IGV and igv.js: reference builds, indexing, annotation tracks, batch screenshots, and the visual checks that catch bad variant calls.
How to pull rs1801133 out of your own VCF without a strand error, what the C677T variant does to the enzyme, and which blood measurements tell you whether it matters for you.
A step-by-step WGS pipeline for a single human genome: alignment with bwa-mem2, variant calling with DeepVariant, structural variants with Manta, annotation with VEP, and the QC numbers that tell you whether any of it worked.
A whole genome is every base of your DNA, read at some depth, delivered as files. Here is what the files contain, which tools to run on them, and where short-read WGS quietly fails.
A practical pipeline for taking raw whole-genome sequencing data from FASTQ to annotated variants, structural variants, pharmacogenomic diplotypes, and polygenic scores, with the QC steps that decide whether any of it means anything.
89 mg/dL is a normal glucose value, but a single number carries less information than most people assume. Here is how to read it given measurement error, and what to compute from a CGM trace instead.
A genetic panel sequences a curated list of genes at high depth and reports variants in those genes only. Here is what that buys you, what it misses, what it costs, and how to decide between a panel and whole-genome sequencing.
hg19 is UCSC's packaging of the GRCh37 human reference assembly. They are nearly the same sequence with different chromosome names and a different mitochondrion, and the coordinates do not match GRCh38. Here is how to tell which build your files use and how to move between them without corrupting your data.
A lipoprotein panel goes past total cholesterol to count particles: apoB, Lp(a), LDL-P by NMR, and oxidized LDL. Here is what each number means, which assay to order, and how to handle the units problem.