Toewijzen met kans: willekeurige selectie en randomisatielijst
Kort
De tegel trekt een enkelvoudige aselecte steekproef uit een lijst (getallen 1 tot en met N of een geplakte lijst met één ID per regel) of verdeelt personen over groepen: met blokrandomisatie (verhouding van de groepen, meerdere blokgroottes, eventueel apart per stratum) of met vaste groepsgroottes. Elke lijst kan als CSV worden opgeslagen of gekopieerd.
Een hulpmiddel voor onderwijs, geen randomisatie voor een echte studie
De startwaarde is zichtbaar. Wie die en de methode kent, kan de hele lijst vooraf berekenen; er is geen verborgen toewijzing en geen protocol. Een echte studie heeft een goedgekeurd systeem nodig, een onafhankelijke persoon en het protocol van de instelling. Daarom begint elk geëxporteerd bestand met de regel “Hulpmiddel voor onderwijs - niet voor echte studies (zonder verberging)”, de startwaarde en de methode.
Startwaarde
De standaardwaarde is 20261008. Dezelfde startwaarde en dezelfde invoer geven dezelfde lijst; een andere startwaarde geeft een andere. De startwaarde komt nooit van de klok. Bij strata heeft elk stratum een eigen stroom (nummer van het stratum vanaf 1): de lijst van een stratum verandert niet als een ander stratum groter wordt.
Blokken
- Een blok bevat elke groep zo vaak als de verhouding vraagt (bij 1:1 en blokgrootte 4 twee keer elk), in willekeurige volgorde. Na elk compleet blok zijn de groepen precies in balans; tussendoor verschillen ze hooguit de helft van de blokgrootte.
- Wie de blokgrootte kent, kan het laatste geval van elk blok raden. Daarom worden meerdere blokgroottes gemengd; de bloknummers in de tabel tonen waar een blok eindigt.
- Het laatste blok kan onvolledig blijven; de groepen zijn dan aan het einde niet precies gelijk. Met “Het laatste blok compleet houden” wordt de lijst langer dan het aantal plaatsen.
- Veel kleine strata hebben veel onvolledige blokken.
Verborgen modus: persoon voor persoon
- De hele lijst ontstaat bij de start uit het toeval van de browser (niet uit een startwaarde) en wordt niet getoond. Elke persoon krijgt zijn groep pas als zijn ID is ingevoerd; dat kan niet ongedaan worden gemaakt, en elk ID telt maar één keer.
- De vingerafdruk (SHA-256 van een salt en de lijst) legt de lijst vast. Hij hoort vóór de eerste inclusie in het studieprotocol. Aan het eind wordt de lijst samen met de salt openbaar gemaakt; wie de vingerafdruk opnieuw berekent, ziet dat er achteraf niets is gewijzigd.
- Grens: de lijst is alleen verborgen voor een blik op het scherm. Wie de ontwikkelaarstools van de browser opent, kan haar lezen, en wie de opslag van de browser wist, verliest de run. Het logboek moet daarom tijdens de inclusie worden opgeslagen. Een echte studie heeft een goedgekeurd systeem nodig waarin de persoon die includeert de lijst nooit ziet.
Selectie uit een lijst
De ID’s worden alleen getoond en nooit in een opdracht ingevoegd; de lijst blijft in de browser. Dubbele ID’s worden niet verwijderd (anders zou een persoon een dubbele kans hebben) maar gemeld; lege regels worden overgeslagen. Grenzen: hooguit een miljoen regels van hooguit 200 tekens elk. Een selectie kiest personen, een toewijzing verdeelt ze over groepen; dat zijn twee verschillende stappen.
Voor specialisten
Generator mulberry32 (32 bit) met gemengde substromen uit (startwaarde, nummer). Schudden volgens Fisher-Yates; de selectie wisselt alleen k plaatsen, zodat een miljoen regels bijna niets kost. De methoden zijn gedefinieerd, niet “juist” ten opzichte van een standaard: een andere generator zou andere lijsten geven. De eigenschappen zijn getest (elk compleet blok in balans, verschil hooguit de helft van de blokgrootte, gelijke inclusiefrequentie, gelijke frequentie van de zes rangschikkingen van een 1:1-blok van grootte 4 bij vaste startwaarden) en ook lijsten die in het script met een nabouw van de generator in R zijn gemaakt.