Co to jest minimalizacja przydziału?
Minimalizacja przydziału (ang. minimization) to metoda, w której grupa dla kolejnej osoby zależy od cech osób już włączonych do badania. Pocock i Simon (1975) zaproponowali ją na sytuację, gdy czynników prognostycznych jest kilka, a bloki w warstwach zawodzą, bo liczba warstw zbliża się do liczebności próby. Minimalizacja nie równoważy kombinacji czynników, tylko rozkład każdego czynnika osobno. Dzięki temu można równoważyć cztery czy pięć czynników, przy których randomizacja warstwowa w małej próbie by zawiodła.
Jak działa minimalizacja
Altman i Bland (2005) opisują prostą wersję. Pierwszą osobę przydziela się losowo. Dla każdej następnej liczy się, ile osób o tych samych cechach (ta sama płeć, grupa wieku, nasilenie objawów, ośrodek) jest już w każdej grupie, i sumuje te liczby. Osoba trafia do grupy z mniejszą sumą, a przy remisie – losowo. Zwykle dodaje się element losowy: grupę minimalizującą nierównowagę wybiera się z prawdopodobieństwem np. 0.8. Równowaga jest wtedy trochę gorsza, ale przydział trudniej przewidzieć.
Przykład
40 osób przydzielono w R według czterech czynników (płeć, wiek, nasilenie, ośrodek) z prawdopodobieństwem wyboru grupy wskazanej równym 0.8. Dla 21. osoby (mężczyzna, 50+, łagodne objawy, ośrodek 1) suma wynosiła 18 w grupie A i 21 w grupie B, więc wskazaną grupą była A. Grupy liczyły po 20 osób, a największa różnica w poziomie czynnika wyniosła 3 osoby. W symulacji 2000 badań średnia największa nierównowaga wynosiła 2.81 osoby wobec 7.08 przy randomizacji prostej, a różnica co najmniej 4 osób zdarzała się w 23.6% wobec 95.0% badań.
Jak opisać w pracy
Na co uważać
- Analiza bez czynników minimalizacji. Kahan i Morris (2012) pokazali, że takie analizy dają za szerokie przedziały ufności i mniejszą moc. Uwzględnij czynniki jako kowarianty, np. w ANCOVA.
- Brak elementu losowego. Deterministyczną minimalizację da się przewidzieć, jeśli zna się cechy wcześniejszych osób. Prowadź ją centralnie i zadbaj o ukrycie przydziału.
- Zmienne ciągłe trzeba podzielić na kategorie przed rozpoczęciem badania.
Minimalizację obok bloków i warstw porównuje wpis Randomizacja w praktyce, a planowanie całego badania – Badania kliniczne i pomiar przed i po.
Minimalizacja w R
Kod wykonuje minimalizację w wersji Altmana i Blanda (2005) z elementem losowym, pokazuje obliczenie dla jednej osoby i porównuje nierównowagę czynników z randomizacją prostą.
Minimalizacja według czterech czynników z elementem losowym
R
# Minimalizacja (Pocock i Simon, 1975; Altman i Bland, 2005): dla nowej osoby sumujemy,
# ile osób o tych samych poziomach czynników jest już w każdym ramieniu; ramię z mniejszą sumą
# wybieramy z prawdopodobieństwem 0.8, przy remisie losujemy 1:1
set.seed(4110)
n <- 40
osoby <- data.frame(plec = sample(c("K", "M"), n, replace = TRUE, prob = c(.6, .4)),
wiek = sample(c("<50", "50+"), n, replace = TRUE),
nasilenie = sample(c("łagodne", "nasilone"), n, replace = TRUE, prob = c(.6, .4)),
osrodek = sample(c("1", "2", "3"), n, replace = TRUE))
czynniki <- names(osoby)
minimalizuj <- function(dane, pr = 0.8, slad = 0) {
grupa <- rep(NA_character_, nrow(dane))
for (i in seq_len(nrow(dane))) {
wczesniej <- seq_len(i - 1)
suma <- sapply(c("A", "B"), function(k)
sum(sapply(czynniki, function(f) sum(dane[[f]][wczesniej] == dane[[f]][i] & grupa[wczesniej] == k))))
if (suma["A"] == suma["B"]) {
grupa[i] <- sample(c("A", "B"), 1)
} else {
lepsze <- names(which.min(suma))
grupa[i] <- if (runif(1) < pr) lepsze else setdiff(c("A", "B"), lepsze)
}
if (i %in% slad) cat(sprintf("osoba %d (%s): suma A = %d, suma B = %d -> %s\n", i,
paste(unlist(dane[i, ]), collapse = "/"), suma["A"], suma["B"], grupa[i]))
}
grupa
}
osoby$grupa <- minimalizuj(osoby, slad = 21)
table(osoby$grupa)
nierownowaga <- function(g, dane) sapply(czynniki, function(f)
max(abs(tapply(g == "A", dane[[f]], sum) - tapply(g == "B", dane[[f]], sum))))
rbind(minimalizacja = nierownowaga(osoby$grupa, osoby),
prosta = nierownowaga(sample(c("A", "B"), n, replace = TRUE), osoby))
# Symulacja (2000 badań po 40 osób): największa nierównowaga w poziomie któregokolwiek czynnika
sym <- replicate(2000, {
d <- data.frame(plec = sample(c("K", "M"), n, TRUE, c(.6, .4)), wiek = sample(c("<50", "50+"), n, TRUE),
nasilenie = sample(c("łagodne", "nasilone"), n, TRUE, c(.6, .4)), osrodek = sample(c("1", "2", "3"), n, TRUE))
c(prosta = max(nierownowaga(sample(c("A", "B"), n, TRUE), d)),
minimalizacja = max(nierownowaga(minimalizuj(d), d)))
})
round(rowMeans(sym), 2) # średnia największa nierównowaga (liczba osób)
round(rowMeans(sym >= 4), 3) # P(nierównowaga co najmniej 4 osób)Wynik w R
osoba 21 (M/50+/łagodne/1): suma A = 18, suma B = 21 -> A
A B
20 20
plec wiek nasilenie osrodek
minimalizacja 1 2 0 3
prosta 5 4 4 3
prosta minimalizacja
7.08 2.81
prosta minimalizacja
0.950 0.236 Bibliografia oprogramowania
Wyniki pochodzą z uruchomienia pokazanego kodu w R 4.5.3 (funkcje pakietów base i stats). W pracy podaj wersję R, której faktycznie użyto (sessionInfo()).
- R: R Core Team. (2026). R: A language and environment for statistical computing (Version 4.5.3) [Computer software]. R Foundation for Statistical Computing. https://www.R-project.org/
Najczęstsze pytania
Czy badanie z minimalizacją można nazwać randomizowanym?
Nie w ścisłym sensie, bo przydział zależy od osób już włączonych. Z elementem losowym zachowuje jednak sporą nieprzewidywalność, a Altman i Bland (2005) uznają ją za uprawnioną alternatywę dla zwykłej randomizacji.
Ilu czynników można użyć w minimalizacji?
Więcej niż w randomizacji warstwowej, bo minimalizacja równoważy każdy czynnik osobno, a nie ich kombinacje (Pocock i Simon, 1975). W praktyce wybiera się kilka silnych czynników prognostycznych i ośrodek; zmienne ciągłe trzeba podzielić na kategorie.
Jak wykonać minimalizację w R?
Wystarczy pętla w base R: dla każdej nowej osoby policz sumę osób o tych samych cechach w każdej grupie i wybierz grupę z mniejszą sumą z prawdopodobieństwem np. 0.8. W prawdziwym badaniu przydziałem powinien zarządzać system centralny, a nie arkusz badacza.
Powiązane hasła
Poradniki, w których użyjesz tego pojęcia
Randomizacja w praktyce
Bloki o losowej długości, warstwy, minimalizacja Pococka–Simona i ukrycie przydziału – lista przydziału w R, symulacja i wzór opisu CONSORT.
Czytaj →PoradnikBadania kliniczne i pomiar przed i po – przewodnik
Osiem etapów badania z interwencją: schemat, etyka, błąd pomiaru, liczebność, ITT, ANCOVA, RCI i MCID oraz CONSORT – z linkami do każdego etapu.
Czytaj →PoradnikSTROBE, CONSORT i TRIPOD – która lista
Jak dobrać listę raportowania do schematu badania, wypełnić ją z numerami stron i obsłużyć punkty „nie dotyczy” – z tabelą i schematem wyboru.
Czytaj →Potrzebujesz wsparcia w analizie danych?
Wybierz ofertę dopasowaną do pracy dyplomowej albo profesjonalnego projektu naukowego.
Wyceń analizęOferta dla studentówBibliografia i dalsza literatura naukowa (APA 7)
- Altman, D. G., & Bland, J. M. (2005). Treatment allocation by minimisation. BMJ, 330(7495), 843. https://doi.org/10.1136/bmj.330.7495.843 ● Otwarty dostęp
- Kahan, B. C., & Morris, T. P. (2012). Improper analysis of trials randomised using stratified blocks or minimisation. Statistics in Medicine, 31(4), 328–340. https://doi.org/10.1002/sim.4431
- Pocock, S. J., & Simon, R. (1975). Sequential treatment assignment with balancing for prognostic factors in the controlled clinical trial. Biometrics, 31(1), 103–115. https://doi.org/10.2307/2529712
Cytowania BibTeX
@article{altman2005treatment, author={Altman, Douglas G. and Bland, J. Martin}, title={{Treatment allocation by minimisation}}, journal={BMJ}, year={2005}, volume={330}, number={7495}, pages={843}, doi={10.1136/bmj.330.7495.843}}@article{kahan2012improper, author={Kahan, Brennan C. and Morris, Tim P.}, title={{Improper analysis of trials randomised using stratified blocks or minimisation}}, journal={Statistics in Medicine}, year={2012}, volume={31}, number={4}, pages={328--340}, doi={10.1002/sim.4431}}@article{pocock1975sequential, author={Pocock, Stuart J. and Simon, Richard}, title={{Sequential treatment assignment with balancing for prognostic factors in the controlled clinical trial}}, journal={Biometrics}, year={1975}, volume={31}, number={1}, pages={103--115}, doi={10.2307/2529712}}