| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung |
| de:create:functions:random [10.04.2016 10:10] – Übernahme einiger Inhalte aus "Randomisierung" admin | de:create:functions:random [08.09.2021 22:34] (aktuell) – [random()] admin |
|---|
| * //max//\\ Die größte erlaubte Zahl | * //max//\\ Die größte erlaubte Zahl |
| |
| **Hinweis:** Wird eine Zufallsziehung ohne Zurücklegen für ein Experiment verwendet, muss man mit unterschiedlich großen Experimentalgruppen rechnen. Für Ziehungen mit Zurücklegen bietet SoSci Survey [[:de:create:random_urns|Urnen]]. | **Hinweis:** Obgleich man mit ''random()'' eine Zufallsziehung im Fragebogen realisieren kann, wird die Verwendung eines [[:de:create:questions:random|Zufallsgenerators]] empfohlen. Mehr zu Zufallsziehungen und Experimentalgruppen s. [[:de:create:randomization]]. |
| |
| **Hinweis:** Zur Verwendung von Zufallszahl s. [[:de:create:randomization]]. | **Warnung:** Die Funktion ''random()'' speichert die gezogene Zufallszahl __nicht__ im Datensatz. Wenn Sie die gezogene Zahl brauchen, verwenden Sie bitte einen [[:de:create:questions:random]] oder speichern Sie die Funktion mittels ''[[:de:create:functions:put]]'' in eine interne Variable. |
| |
| |
| //min// ≤ Rückgabewert ≤ //max// | //min// ≤ Rückgabewert ≤ //max// |
| |
| |
| ===== Ziehen mit Zurücklegen ===== | |
| |
| Die PHP-Funktion ''[[:de:create:functions:random|random()]]'' und ''[[:de:create:functions:random_p|random_p()]]'' (für gewichtete Zufallsziehungen) liefern eine Zufallsziehung mit Zurücklegen. Eine uneingeschränkte Zufallsziehung "mit Zurücklegen" ist einem Würfel vergleichbar. Die Gruppengrößen variieren hier i.d.R. stark, was problematisch für die Auswertung sein kann ([[:de:create:randomization]]). | |
| |
| **Wichtig:** Bei der Ziehung mit Zurücklegen muss man unbedingt dafür sorgen, dass die Zufallszahl im Datensatz gespeichert wird. Dies erfolgt mithilfe einer internen Variable und der Funktion ''[[:de:create:functions:put|put()]]''. | |
| |
| - Im **Fragenkatalog** eine neue Frage vom Typ [[:de:create:questions:internal|interne Variablen]] anlegen (z.B. mit der Kennung ''IV01'') | |
| - Innerhalb dieser Frage eine Variable (Item) anlegen, Beschreibung z.B. "Zufallszahl". Diese Variable hat laut **Variablen-Übersicht** dann z.B. die Kennung ''IV01_01''. | |
| - Die eigentliche Zufallsziehung erfolgt dann mittels [[:de:create:php|PHP-Code]]. | |
| |
| <code php> | |
| $zahl = random(1,4); // Würfelt eine Zahl zwischen 1 und 4 | |
| put('IV01_01', $zahl); // Speichert die Zahl in IV01_01 | |
| </code> | |
| |
| |
| ===== Beispiel ===== | |
| |
| Im folgenden Beispiel wird eine Zahl zwischen 1 und 3 gewürfelt und dem Teilnehmer entsprechend einer der Textbausteine "stimulus1" bis "stimulus3" angezeigt. Zum Speichern der gezogenen Zahl im Datensatz wird die Funktion ''[[:de:create:functions:put|put()]]'' verwendet. | |
| |
| <code php> | |
| // Zufallszahl würfeln | |
| $stim = random(1, 3); | |
| // Ergebnis der Ziehung im Datensatz speichern | |
| put('IV01_01', $stim); | |
| // Stimulus anzeigen | |
| if ($version == 1) { | |
| text('stimulus1'); | |
| } elseif ($version == 2) { | |
| text('stimulus2'); | |
| } else { | |
| text('stimulus3'); | |
| } | |
| </code> | |