# Pseudorandom Number Generator Streams > Standard library pseudorandom number generator (PRNG) streams.
## Usage ```javascript var ns = require( '@stdlib/random/streams' ); ``` #### ns Standard library pseudorandom number generator (PRNG) streams. ```javascript var streams = ns; // returns {...} ``` The namespace contains the following functions for creating readable pseudorandom number generator streams:
- [`arcsine( a, b[, options] )`][@stdlib/random/streams/arcsine]: create a readable stream for generating pseudorandom numbers drawn from an arcsine distribution. - [`bernoulli( p[, options] )`][@stdlib/random/streams/bernoulli]: create a readable stream for generating pseudorandom numbers drawn from a Bernoulli distribution. - [`beta( alpha, beta[, options] )`][@stdlib/random/streams/beta]: create a readable stream for generating pseudorandom numbers drawn from a beta distribution. - [`betaprime( alpha, beta[, options] )`][@stdlib/random/streams/betaprime]: create a readable stream for generating pseudorandom numbers drawn from a beta prime distribution. - [`binomial( n, p[, options] )`][@stdlib/random/streams/binomial]: create a readable stream for generating pseudorandom numbers drawn from a binomial distribution. - [`boxMuller( [options] )`][@stdlib/random/streams/box-muller]: create a readable stream for generating pseudorandom numbers drawn from a standard normal distribution using the Box-Muller transform. - [`cauchy( x0, gamma[, options] )`][@stdlib/random/streams/cauchy]: create a readable stream for generating pseudorandom numbers drawn from a Cauchy distribution. - [`chi( k[, options] )`][@stdlib/random/streams/chi]: create a readable stream for generating pseudorandom numbers drawn from a chi distribution. - [`chisquare( k[, options] )`][@stdlib/random/streams/chisquare]: create a readable stream for generating pseudorandom numbers drawn from a chi-square distribution. - [`cosine( mu, s[, options] )`][@stdlib/random/streams/cosine]: create a readable stream for generating pseudorandom numbers drawn from a raised cosine distribution. - [`discreteUniform( a, b[, options] )`][@stdlib/random/streams/discrete-uniform]: create a readable stream for generating pseudorandom numbers drawn from a discrete uniform distribution. - [`erlang( k, lambda[, options] )`][@stdlib/random/streams/erlang]: create a readable stream for generating pseudorandom numbers drawn from an Erlang distribution. - [`exponential( lambda[, options] )`][@stdlib/random/streams/exponential]: create a readable stream for generating pseudorandom numbers drawn from an exponential distribution. - [`f( d1, d2[, options] )`][@stdlib/random/streams/f]: create a readable stream for generating pseudorandom numbers drawn from an F distribution. - [`frechet( alpha, s, m[, options] )`][@stdlib/random/streams/frechet]: create a readable stream for generating pseudorandom numbers drawn from a Fréchet distribution. - [`gamma( alpha, beta[, options] )`][@stdlib/random/streams/gamma]: create a readable stream for generating pseudorandom numbers drawn from a gamma distribution. - [`geometric( p[, options] )`][@stdlib/random/streams/geometric]: create a readable stream for generating pseudorandom numbers drawn from a geometric distribution. - [`gumbel( mu, beta[, options] )`][@stdlib/random/streams/gumbel]: create a readable stream for generating pseudorandom numbers drawn from a Gumbel distribution. - [`hypergeometric( N, K, n[, options] )`][@stdlib/random/streams/hypergeometric]: create a readable stream for generating pseudorandom numbers drawn from a hypergeometric distribution. - [`improvedZiggurat( [options] )`][@stdlib/random/streams/improved-ziggurat]: create a readable stream for generating pseudorandom numbers drawn from a standard normal distribution using the Improved Ziggurat algorithm. - [`invgamma( alpha, beta[, options] )`][@stdlib/random/streams/invgamma]: create a readable stream for generating pseudorandom numbers drawn from an inverse gamma distribution. - [`kumaraswamy( a, b[, options] )`][@stdlib/random/streams/kumaraswamy]: create a readable stream for generating pseudorandom numbers drawn from a Kumaraswamy's double bounded distribution. - [`laplace( mu, b[, options] )`][@stdlib/random/streams/laplace]: create a readable stream for generating pseudorandom numbers drawn from a Laplace (double exponential) distribution. - [`levy( mu, c[, options] )`][@stdlib/random/streams/levy]: create a readable stream for generating pseudorandom numbers drawn from a Lévy distribution. - [`logistic( mu, s[, options] )`][@stdlib/random/streams/logistic]: create a readable stream for generating pseudorandom numbers drawn from a logistic distribution. - [`lognormal( mu, sigma[, options] )`][@stdlib/random/streams/lognormal]: create a readable stream for generating pseudorandom numbers drawn from a lognormal distribution. - [`minstdShuffle( [options] )`][@stdlib/random/streams/minstd-shuffle]: create a readable stream for a linear congruential pseudorandom number generator (LCG) whose output is shuffled. - [`minstd( [options] )`][@stdlib/random/streams/minstd]: create a readable stream for a linear congruential pseudorandom number generator (LCG) based on Park and Miller. - [`mt19937( [options] )`][@stdlib/random/streams/mt19937]: create a readable stream for a 32-bit Mersenne Twister pseudorandom number generator. - [`negativeBinomial( r, p[, options] )`][@stdlib/random/streams/negative-binomial]: create a readable stream for generating pseudorandom numbers drawn from a negative binomial distribution. - [`normal( mu, sigma[, options] )`][@stdlib/random/streams/normal]: create a readable stream for generating pseudorandom numbers drawn from a normal distribution. - [`pareto1( alpha, beta[, options] )`][@stdlib/random/streams/pareto-type1]: create a readable stream for generating pseudorandom numbers drawn from a Pareto (Type I) distribution. - [`poisson( lambda[, options] )`][@stdlib/random/streams/poisson]: create a readable stream for generating pseudorandom numbers drawn from a Poisson distribution. - [`randi( [options] )`][@stdlib/random/streams/randi]: create a readable stream for generating pseudorandom numbers having integer values. - [`randn( [options] )`][@stdlib/random/streams/randn]: create a readable stream for generating pseudorandom numbers drawn from a standard normal distribution. - [`randu( [options] )`][@stdlib/random/streams/randu]: create a readable stream for generating uniformly distributed pseudorandom numbers between `0` and `1`. - [`rayleigh( sigma[, options] )`][@stdlib/random/streams/rayleigh]: create a readable stream for generating pseudorandom numbers drawn from a Rayleigh distribution. - [`t( v[, options] )`][@stdlib/random/streams/t]: create a readable stream for generating pseudorandom numbers drawn from a Student's t distribution. - [`triangular( a, b, c[, options] )`][@stdlib/random/streams/triangular]: create a readable stream for generating pseudorandom numbers drawn from a triangular distribution. - [`uniform( a, b[, options] )`][@stdlib/random/streams/uniform]: create a readable stream for generating pseudorandom numbers drawn from a uniform distribution. - [`weibull( k, lambda[, options] )`][@stdlib/random/streams/weibull]: create a readable stream for generating pseudorandom numbers drawn from a Weibull distribution.
## Examples ```javascript var objectKeys = require( '@stdlib/utils/keys' ); var ns = require( '@stdlib/random/streams' ); console.log( objectKeys( ns ) ); ```