gleam_stats/random

A module containing functions for generating and randomizing data.


Functions

pub fn bools(m: Int, stream: Iterator(Int)) -> Result(
  #(List(Bool), Iterator(Int)),
  String,
)

Generate a list of random boolean values where each outcome (True/False) appears with 50% probability.

Example:
 import gleam_stats/generators
 import gleam_stats/random

 pub fn example() {
   let stream = generators.seed_pcg32(5, 1)
   let bools =
   random.bools(10, stream)
   |> pair.first()
 }
pub fn shuffle(list: List(a), stream: Iterator(Int)) -> #(
  List(a),
  Iterator(Int),
)

Given a list as input shuffle and return it (along with the generator that was also passed as input).

Example:
 import gleam_stats/generators
 import gleam_stats/random

 pub fn example() {
   let stream = generators.seed_pcg32(5, 1)
   let shuffled_list =
   random.shuffle([1, 10, 100], stream)
   |> pair.first()
 }