Normalised data and fold change
Ratios to control, fold change, ΔΔCt and assay readouts expressed relative to a control.
- Choose a methodStatistics on fold change and normalised data (% of control, ratio to control)Analyse fold changes on the log scale, paired by experiment when each blot or plate has its own control, instead of setting controls to 1 and testing against them. Worked Western blot example in R and Python.
- Choose a methodqPCR statistics: test ΔCt values, not 2^−ΔΔCt fold changesRun the t-test on ΔCt values, one per biological sample, then report the 2^−ΔΔCt fold change with a back-transformed confidence interval. Worked example, simulation and code in R and Python.
- Choose a methodNormalising to body weight: organ-to-body-weight ratio or ANCOVA?A ratio removes body size only when the organ grows in proportion to the body. Otherwise use body weight as a covariate (ANCOVA on the log scale). Worked example where the ratio finds a false effect, in R and Python.
- Choose a methodSeahorse respiration data: normalising OCR, mito stress test parameters and plates as replicatesNormalise OCR to cell number (or protein or DNA) per well, subtract non-mitochondrial respiration, and compare genotypes with independent plates as n, on the log scale. Wells on one plate are technical replicates. Python and R code.
- Choose a methodScratch wound-healing assay statistics: migration speed, percent closure and experiments as nMeasure migration speed from the slope of wound width over time rather than percent closure at one time, which depends on the starting width; average fields and wells, and compare conditions with independent experiments as n. Python and R code.
- Choose a methodTranswell migration and invasion assay statistics: fields, inserts, percent of control and what counts as nAverage fields within inserts and inserts within experiments, then compare conditions as a log ratio per experiment. Fields as n, or a Student's t-test against a control fixed at 100%, give false positives. Python and R code.
- Choose a methodChIP-qPCR statistics: percent input, fold enrichment over IgG and what counts as nCalculate percent input using the input dilution, compare conditions as a log ratio per independent chromatin preparation, and use IgG as a background check rather than the denominator. Python and R code with a simulation.
- Choose a methodDual-luciferase reporter assay statistics: firefly/Renilla ratios, transfections as n and a control reporter that movesNormalise firefly to Renilla per well, average wells per transfection, and compare conditions as a log2 ratio per transfection. Wells as n gave 19% false positives in simulation; check that Renilla is unaffected. Python and R code.
- Choose a methodCell viability as percent of control: replicate wells, independent experiments and normalisationAnalyse MTT or CellTiter-Glo viability with independent experiments as n: blank-subtract, average wells, express treated as percent or log ratio of vehicle. In simulation, wells as n gave 39% false positives. Python and R code.