randomization

majiayu000's avatarfrom majiayu000

Implement proper randomization procedures for experiments. Use when: (1) Assigning participants to conditions, (2) Ensuring unbiased allocation, (3) Meeting CONSORT standards, (4) Pre-registration.

⭐0stars🔀0forks📁View on GitHub🕐Updated Jan 5, 2026

When & Why to Use This Skill

The Randomization skill automates the implementation of rigorous experimental designs by providing standardized procedures for unbiased participant allocation. It supports advanced methodologies such as block and stratified randomization, helping researchers maintain scientific integrity, meet CONSORT standards, and ensure reproducibility in clinical trials and academic studies.

Use Cases

  • Clinical Trials: Implementing block randomization to ensure equal group sizes and minimize selection bias in medical treatments.
  • Social Science Experiments: Using stratified randomization to balance key demographic factors like age, gender, or socioeconomic status across different study conditions.
  • Pre-registration & Compliance: Generating documented, seed-based random sequences to satisfy transparency requirements for journal submissions and ethical review boards.
  • Small Sample Studies: Applying minimization techniques to dynamically allocate participants and maintain balance across multiple prognostic factors when sample sizes are limited.
namerandomization
description"Implement proper randomization procedures for experiments. Use when: (1) Assigning participants to conditions, (2) Ensuring unbiased allocation, (3) Meeting CONSORT standards, (4) Pre-registration."
allowed-toolsRead, Write, Bash
version1.0.0

Randomization Skill

Purpose

Implement proper random assignment to minimize selection bias.

Randomization Methods

1. Simple Randomization

  • Coin flip, random number generator
  • Best for large samples (N>200)
  • Risk of imbalance in small samples

2. Block Randomization

  • Ensures equal group sizes
  • Blocks of 4, 6, or 8
  • Example: AABB, ABAB, BABA, BBAA

3. Stratified Randomization

  • Balance prognostic factors
  • Stratify by sex, age group, severity
  • Then randomize within strata

4. Minimization

  • Dynamic allocation
  • Minimizes imbalance across factors
  • Used in small trials

Implementation

Steps:

  1. Generate random sequence (with seed)
  2. Document sequence generation
  3. Implement allocation concealment
  4. Execute randomization
  5. Document actual allocation

Example (Python):

import random
random.seed(12345)  # Document seed
sequence = ['A', 'B'] * 50  # 100 participants
random.shuffle(sequence)

Version: 1.0.0