Experimental Design
Choose the study structure before data collection, then produce an auditable, seeded allocation or DOE layout. Use statistical-power for sample size or MDE after choosing the design. For already-collected data, use the available analysis workflow; related skills are optional and do not block this workflow if absent.
Design invariants
- Identify the experimental unit, treatment assignment level, response, and true independent replicate. Repeated measurements are not independent replication; preserve clusters, nesting, and repeated-measures structure in the analysis.
- Randomize treatment assignment and run/processing order, and block or stratify known nuisance factors such as batch, day, site, operator, or plate position.
- Use appropriate concurrent controls and, where relevant, sham/vehicle controls and blinding. Keep condition separate from nuisance factors.
- Establish the effects and interactions to estimate, alias structure, and whether curvature matters before choosing a factorial, screening, or response-surface design.
- Preserve the design, random seed, schedule, and analysis plan so the assignment is reproducible and auditable.
Choose the relevant guidance
Read only the branch needed for the current design:
| Task | Reference |
|---|---|
| Choose a design or audit confounding, pseudoreplication, aliasing, or curvature | Design selection and structural risks |
| Assign treatments, block/stratify, choose controls, or lay out plates/batches | Randomization and blocking |
| Factorial/fractional designs, screening, resolution/aliasing, or response surfaces | Factorial and DOE |
| Crossover, repeated measures, split plot, Latin square, cluster, or nested design | Design types |
| Interim analyses, sequential stopping, or adaptation | Sequential and adaptive designs |
| Generate an allocation schedule or DOE matrix | Layout generation, installation, and script examples |
Workflow
- State the question, the unit, and the response. What is randomized? What is measured? At what level is a true independent replicate? This determines everything.
- List nuisance factors (batch, day, site, operator, position) — plan to block, stratify, or randomize across each.
- Pick the design using the relevant design references.
- Decide replication at the correct level (and get n from the statistical-power skill for the chosen design).
- Generate the layout with
randomization.py/doe_designs.py, seeded. - Randomize run/processing order and plate/batch positions.
- Document the design, seed, and schedule (pre-register if possible) so the analysis is confirmatory and the layout is auditable.
- Match the analysis to the design — blocks, strata, clusters, and nesting must appear in the model. Use statistical-analysis / statsmodels if available.
Attribution
For methodological source references, or when this skill materially contributes to a manuscript, report, presentation, or code release, follow source notes and the current-version citation procedure.