Function pickRandom #

Random pick one or more values from a one dimensional array. Array elements are picked using a random function with uniform or weighted distribution.

Syntax #

math.pickRandom(array)
math.pickRandom(array, number)
math.pickRandom(array, weights)
math.pickRandom(array, number, weights)
math.pickRandom(array, weights, number)
math.pickRandom(array, { weights, number, elementWise })

Parameters #

Parameter Type Description
array Array | Matrix A one dimensional array
number Int An int or float
weights Array | Matrix An array of ints or floats

Returns #

Type Description
number | Array Returns a single random value from array when number is 1 or undefined. Returns an array with the configured number of elements when number is > 1.

Examples #

math.pickRandom([3, 6, 12, 2])                  // returns one of the values in the array
math.pickRandom([3, 6, 12, 2], 2)               // returns an array of two of the values in the array
math.pickRandom([3, 6, 12, 2], { number: 2 })   // returns an array of two of the values in the array
math.pickRandom([3, 6, 12, 2], [1, 3, 2, 1])    // returns one of the values in the array with weighted distribution
math.pickRandom([3, 6, 12, 2], 2, [1, 3, 2, 1]) // returns an array of two of the values in the array with weighted distribution
math.pickRandom([3, 6, 12, 2], [1, 3, 2, 1], 2) // returns an array of two of the values in the array with weighted distribution

math.pickRandom([{x: 1.0, y: 2.0}, {x: 1.1, y: 2.0}], { elementWise: false })
    // returns one of the items in the array

See also #

random, randomInt

Fork me on GitHub