Hallo zusammen,
ich stehe kurz vor der Veröffentlichung meiner Umfrage und habe einen Zweifel bzgl. der Ziehung aus der Urne...
Meine VPN werden einmal einer Bedingung (experte vs. Nicht-Experte) zugeordnet, das klappt super.
Zufallsgenerator 1 (S101):
1 = Experte
2 = Nicht-Experte
--> beide wurden 26x gezogen, das passt also.
Dann sollen sie insgesamt 18 Fragen beantworten, welche in Fragenpaaren angelegt sind und immer nur eine Variante je Fragenpaar erscheinen darf (entweder hoher Anker oder niedriger Anker). Das klappt, jedoch sind die Häufigkeiten der Ziehung sehr unregelmäßig:
In meiner Auswertung zeigt sich, dass ein Item gar nicht gezogen wurde, während andere schon sechs oder sieben Mal gezogen wurden!
Anzeigehäufigkeit / Anzahl Fälle / Item-Kennung
gar nicht 1 NN05
einmal 3 NH03
zweimal 9 EH15, EH18, EN02, EN07
dreimal 18
viermal 20
fünfmal 12
sechsmal 8
siebenmal 1 NH05
achtmal 0
Kann ich das über die Urnen-Einstellung besser kontrollieren oder "mittelt" sich das bei einer entsprechenden Anzahl an Teilnehmern aus?
Aktuell habe ich die Ziehung eingestellt als "Ungeingeschränkte Zufallsauswahl (Ziehen mit Zurücklegen nach der Ziehung), aber es gibt ja noch zwei weitere Varianten (gleichverteilte Ziehung ohne Zurücklegen und Gleichverteilung in abgeschlossenen Fragebögen (Ziehen ohne Zurücklegen).
Zufallsgenerator 2 (S102):
01 = Frage HA (jeweils)
02 =
03 =
04 =
05 =
06 =
07 =
08 =
09 =
10 =
11 =
12 =
13 =
14 =
15 =
16 =
17 =
18 =
Bisher gezogen:
01: 28
02: 17
03: 26
04: 20
05: 22
06: 22
07: 23
08: 26
09: 27
10: 28
11: 19
12: 25
13: 27
14: 29
15: 24
16: 21
17: 24
18: 24
Hier der restliche Code:
// Gruppen-Definition und entsprechende "Fragen-Kataloge"
$fragen_hoch = array();
$fragen_hoch[1] = array('EH01', 'EH02', 'EH03', 'EH04', 'EH05', 'EH06', 'EH07', 'EH08', 'EH09', 'EH10', 'EH11', 'EH12', 'EH13', 'EH14', 'EH15', 'EH16', 'EH17', 'EH18');
$fragen_hoch[2] = array('NH01', 'NH02', 'NH03', 'NH04', 'NH05', 'NH06', 'NH07', 'NH08', 'NH09', 'NH10', 'NH11', 'NH12', 'NH13', 'NH14', 'NH15', 'NH16', 'NH17', 'NH18');
$fragen_niedrig = array();
$fragen_niedrig[1] = array('EN01', 'EN02', 'EN03', 'EN04', 'EN05', 'EN06', 'EN07', 'EN08', 'EN09', 'EN10', 'EN11', 'EN12', 'EN13', 'EN14', 'EN15', 'EN16', 'EN17', 'EN18');
$fragen_niedrig[2] = array('NN01', 'NN02', 'NN03', 'NN04', 'NN05', 'NN06', 'NN07', 'NN08', 'NN09', 'NN10', 'NN11', 'NN12', 'NN13', 'NN14', 'NN15', 'NN16', 'NN17', 'NN18');
// Randomisierte Zuordnung zu Gruppen: Experte oder Nicht-Experte
// über Frage S101 >>> 1 = Experte, 2 = Nicht-Experte
// Standardmäßig werden "hoher Anker" Fragen gestellt.
// Durch Zufallsgenerator S102 werden zufällig 9 Fragen im Katalog mit entsprechenden "niedriger Anker" Fragen ausgetauscht
// Auswahl des entsprechenden "hoher Anker" Kataloges (falls noch nicht geschehen)
if (!isset($katalog)) {
// Auswahl:
$katalog = $fragen_hoch[value('S101')];
// Hier werden jetzt zufällig 9 Fragen durch entsprechende "niedriger Anker" Fragen ersetzt
for ($i = 1; $i <= 9; $i++) {
$varID = 'S102x'.sprintf('%02d', $i); // Die Variablennamen lauten S102x01 bis S102x09
$wert = value($varID);
$katalog[$wert-1] = $fragen_niedrig[value('S101')][$wert-1];
}
// Durchmischen:
shuffle($katalog);
// Speichern um ihn auf mehreren Seiten zu nutzen:
registerVariable($katalog);
}
// Erste Frage anzeigen:
question($katalog[0]);
Ich bin sehr dankbar für Rückmeldungen und Hinweise!
Vielen Dank und schönen Abend