randsample — Randomly sample from an integer range or population vector.

randsample(n,k) samples from integers 1:n. randsample(population,k) samples from a population vector. Replacement and weights are supported with randsample(...,replacement,w).

Syntax

y = randsample(n, k)
y = randsample(population, k)
y = randsample(___, replacement, w)

Inputs

NameTypeRequiredDefaultDescription
nAnyYesPopulation size or upper discrete uniform bound.
kAnyYesNumber of samples.
dataAnyYesPopulation to sample from.
optionsAnyVariadicDimension, replacement, and weights options.

Returns

NameTypeDescription
yAnyRandom sample.

Errors

IdentifierWhenMessage
RunMat:randsample:InvalidArgumentInputs, dimensions, replacement flags, or weights are malformed.sampling: invalid argument
RunMat:randsample:InternalInternal conversion or allocation fails.sampling: internal error

How randsample works

  • Samples without replacement by default.
  • When the first argument is a numeric scalar, it is treated as the upper limit n.
  • Population vectors preserve their row or column orientation.
  • Weights are supported for sampling with replacement, matching MATLAB's documented restriction.
  • Numeric, logical, string, and char population vectors are supported.

Examples

Sample unique integers

y = randsample(20, 10)

Sample with replacement and weights

y = randsample(population, 5, true, weights)

Using randsample with coding agents

Open a RunMat example with live inputs, then ask the agent to explain how randsample changes the result.

Run a small randsample example, explain the result, then change one input and compare the output.

FAQ

How is randsample different from datasample?

randsample(n,k) is specialized for integer ranges and population vectors. Use datasample to sample along dimensions of arrays.

Open-source implementation

Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how randsample is executed, line by line, in Rust.

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.

Getting started · Benchmarks · Pricing

Download RunMat

Download RunMat for full performance, or use RunMat in your browser for zero setup.