[[random()]]
This translation is older than the original page and might be outdated. See what has changed.
Translations of this page:
 

This is an old revision of the document!


random()

int random(int min, int max)

The function random() returns a whole number between min and max. It is suitable for random draws with replacement. Examples of its use as part of a random draw can be found in the chapter Randomization.

  • min
    The smallest number allowed
  • max
    The largest number allowed

Note: If a random draw without replacement is used in an experiment, then different sizes of experimental groups are inevitable. SoSci Survey offers urns for random draws with replacement.

Note:​ See Randomization for the application of random draws.

Return Value

A whole number between min and max

min ≤ return value ≤ max

Drawing with Replacement

The PHP functions random() and random_p() (for weighted random draws) randomly draw with replacement. An unrestricted random draw “with replacement” is comparable to throwing a die. As a rule, group sizes vary greatly here and this can be problematic for the analysis.

Note: When drawing with replacement, it is crucial to ensure that the random number is saved in the data record. To do this, use an internal variable and the function put().

  1. Add a new question in the List of Questions using the type “Internal Variables” (e.g. with ID IV01)
  2. Add a variable (item) in this question with the description, as an example, “random number”. According to the Variables List, this variable's ID is IV01_01.
  3. PHP code is used to carry out the actual random draw.
$number = random(1,4);  // rolls a number between 1 and 4
put('IV01_01', $number);  // saves the number in IV01_01

Example

In the following example, a number between 1 and 3 is drawn and the participant is shown one of the text elements “stimulus1” to “stimulus3” corresponding to the number. The function put() is used to save the drawn number in the data record.

// Draw a random number
$stim = random(1, 3);
// Save the result of the draw in the data record
put('IV01_01', $stim);
// Display stimulus
if ($version == 1) {
  text('stimulus1');
} elseif ($version == 2) {
  text('stimulus2');
} else {
  text('stimulus3');
}
en/create/functions/random.1460276452.txt.gz · Last modified: 10.04.2016 10:20 by admin
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki