experimental-design

Generates randomization schedules and DOE matrices for planning experiments before data collection.

Updated Aug 12, 2026
One-click install
npx skills add https://github.com/Mzane0803/latent-minds-skills-marketplace --skill experimental-design-mzane0803
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: experimental-design
Source: https://github.com/Mzane0803/latent-minds-skills-marketplace/tree/main/plugins/research-writing/skills/experimental-design
Command: npx skills add https://github.com/Mzane0803/latent-minds-skills-marketplace --skill experimental-design-mzane0803

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires numpy, pandas, pyDOE3, and includes scripts (resource) and references (resource) components.

What problem does it solve? Poorly designed studies — confounded assignments, pseudoreplication, batch effects — produce data that no analysis can rescue. This Skill helps you make the right design decisions before collecting data: choosing a design type, randomizing units to conditions, blocking nuisance variation, and laying out multi-factor experiments so effects are estimable. ## Core Features & Use Cases - Randomization schedules: Generate seeded simple, permuted-block, stratified-block, and cluster randomization tables as pandas DataFrames for auditable allocation. - DOE matrices: Build full and fractional factorial, Plackett-Burman screening, central-composite, Box-Behnken, and Latin-hypercube designs in real factor units with randomized run order via pyDOE3. - Design guidance references: In-depth coverage of blocking, controls, blinding, aliasing and resolution, crossover/split-plot/cluster designs, pseudoreplication, and group-sequential/adaptive designs. - Use Case: You need to assign 60 mice to treatment and control arms balanced across two sites, then lay out a 3-factor optimization experiment. Generate a stratified block randomization schedule and a central-composite design, both seeded and saved to CSV. ## Quick Start Ask the AI to design an experiment for comparing three treatments across two batches, including a seeded block randomization schedule and a randomized run order.

Frequently Asked Questions about experimental-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I randomize subjects to treatment groups in Python?▼

Use block_randomization for balanced assignment throughout enrollment, or stratified_block_randomization to balance a prognostic factor like site or sex. Both return seeded pandas DataFrames that can be saved as an auditable allocation schedule.

What is the difference between simple and block randomization?▼

Simple randomization assigns each unit independently, which can produce arm imbalance with small samples. Permuted-block randomization guarantees the target ratio within each block, keeping arms balanced throughout sequential enrollment.

Which DOE design should I use to screen many factors?▼

Use a Plackett-Burman or resolution III fractional factorial design to screen 5 or more factors cheaply, estimating main effects only. Follow up on the important factors with a full factorial or response-surface design.

Does pyDOE3 support response-surface designs?▼

Yes, pyDOE3 provides central-composite and Box-Behnken generators, which the doe_designs.py script wraps to return designs in real factor units. These fit quadratic models to locate optima, unlike two-level factorial designs.

What is pseudoreplication and why does it matter?▼

Pseudoreplication is treating repeated measurements of one unit as independent replicates, such as counting 100 cells from 3 mice as n=300. The replicate must be at the level the treatment is randomized, and the analysis must respect the nesting with a mixed model.

When should I use a cluster-randomized design?▼

Use cluster randomization when the intervention is delivered to whole groups like clinics or classrooms rather than individuals. Power depends mainly on the number of clusters and the intraclass correlation, and analysis must account for clustering.