binornd — Generate binomially-distributed random samples.
binornd(n,p) generates binomial random samples for positive integer trial counts n and success probabilities p. Size-vector and dimension-list forms are supported.
Syntax
r = binornd(n, p)
r = binornd(n, p, sz)
r = binornd(n, p, sz1, sz2, ...)Inputs
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
n | Any | Yes | — | Number of Bernoulli trials. |
p | Any | Yes | — | Success probability for each trial. |
sz | Any | Variadic | — | Output size arguments. |
Returns
| Name | Type | Description |
|---|---|---|
r | NumericArray | Random sample array. |
Errors
| Identifier | When | Message |
|---|---|---|
RunMat:binornd:InvalidArgument | Input parameters or size arguments are missing, malformed, or incompatible. | distribution random: invalid argument |
RunMat:binornd:Internal | Internal tensor conversion, allocation, or RNG state access fails. | distribution random: internal error |
How binornd works
- MATLAB-compatible
nandpinputs aresingleordouble;ncontains positive integers andpcontains values in[0,1]. - Typed-integer
nandpare independent all-eight-class extensions inrunmatcompatibility mode; values remain authoritative until the explicit binary64 sampling boundary and reject when they are not exactly representable there. nandpsupport scalar expansion and matching array shapes.- Without explicit size arguments, the output shape is the scalar-expanded parameter shape.
- With explicit size arguments, nonscalar parameters must match the requested shape.
- MATLAB-compatible size controls are integer-valued
singleordouble; all eight typed-integer classes are accepted as exact structural controls inrunmatcompatibility mode. - A single size value produces a square matrix, any nonpositive dimension produces an empty array, and trailing singleton dimensions beyond the second are ignored.
- The output is
singlewhennorpis single and is otherwisedouble; a resident input produces a resident result on the first resident input's owning provider.
Example
Generate binomial samples
r = binornd(10,0.5,2,3)Using binornd with coding agents
Open a RunMat example with live inputs, then ask the agent to explain how binornd changes the result.
Run a small binornd example, explain the result, then change one input and compare the output.
FAQ
Can n be fractional?⌄
No. RunMat requires n to be a positive integer trial count.
Does a typed-integer size change the output class?⌄
No. Size arguments are structural controls; output precision is selected by n and p.
Related Stats functions
Random
bootstrp · datasample · dividerand · exprnd · gamrnd · lhsdesign · mvnrnd · normrnd · random · randsample · rng · trnd · unidrnd · unifrnd · wblrnd
Ml
bayesopt · classify · confusionmat · crossvalind · cvpartition · fitclinear · fitctree · fitlm · kmeans · knnsearch · lasso · lassoglm · linkage · lscov · mnrfit · optimizableVariable · pdist · pdist2 · perfcurve · predict · regress · ridge · squareform · test · training · tsne
Summary
binocdf · boxplot · cdf · cdfplot · chi2cdf · corr · corrcoef · corrcov · cov · cov2corr · dummyvar · ecdf · filloutliers · fitdist · geomean · grpstats · harmmean · icdf · isoutlier · kstest · kurtosis · lsline · mad · mode · nanmax · normalize · normcdf · norminv · normpdf · onehotdecode · onehotencode · pdf · prctile · quantile · refline · rmse · skewness · tabulate · tcdf · tiedrank · tinv · tpdf · ttest2 · wblinv
Hist
Open-source implementation
Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how binornd is executed, line by line, in Rust.
- View the source for binornd in Rust on GitHub
- Learn how the RunMat runtime works
- Found a bug? Open an issue with a minimal reproduction.
About RunMat
RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.
- RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
- Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.