RunMat
  • Pricing
RunMat
GitHub
GitHub
DownloadSign InTry in Browser
DesktopRuntimeServer
RunMat

Run math blazing fast

GitHubX (Twitter)LinkedIn

Company

  • About
  • Pricing
  • Contact

Explore

  • RunMat for academia
  • RunMat vs MATLAB Online
  • Benchmarks

Get product updates and release notes from the RunMat team.

© 2026 Dystr · Made withfor the scientific community.

RunMat™ is a registered trademark of Dystr, Inc. MATLAB® is a registered trademark of The MathWorks, Inc. RunMat is not affiliated with, endorsed by, or sponsored by The MathWorks, Inc.

LicensePrivacy
/
See all docs
Builtin Reference
    • 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

dummyvar — Create dummy-variable columns for grouping variables.

dummyvar(group) converts grouping variables into a numeric design matrix with one dummy column per level.

Syntax

D = dummyvar(group)

Inputs

NameTypeRequiredDefaultDescription
XAnyYes—Input labels.

Returns

NameTypeDescription
DNumericArrayDummy-variable design matrix.

Errors

IdentifierWhenMessage
RunMat:dummyvar:InvalidArgumentInputs, dimensions, classes, output types, or options are malformed.encoding: invalid argument
RunMat:dummyvar:InternalInternal conversion or allocation fails.encoding: internal error

How dummyvar works

  • Numeric vector inputs use positive integer levels 1:max(group); NaN rows become NaN across that grouping variable's dummy columns.
  • The documented numeric input classes are single and double. Typed integer grouping values are a compatibility-gated RunMat extension supporting all eight signed and unsigned classes. RunMat validates sign and the bounded feasible output domain from exact integer storage before converting feasible levels, which are below the binary64 exact-integer boundary; wider levels reject with a controlled output-size error. The output remains double.
  • Numeric row and column vectors are treated as one grouping variable; nonscalar numeric matrices treat each column as a separate grouping variable and concatenate the dummy columns for each variable.
  • Cell arrays can hold multiple grouping variables when supplied as a row cell array; cell-string vectors are encoded by first appearance.
  • Categorical inputs use the full category order, including categories not observed in the input values.
  • String, character-row, logical, and cell-string grouping variables are supported by RunMat.
  • GPU grouping values are a separately gated RunMat extension and are rejected before provider access when compatibility extensions are disabled.

Example

Encode numeric group levels

D = dummyvar([1; 2; 1])

Expected output:

D is [1 0; 0 1; 1 0].

Using dummyvar with coding agents

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

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

FAQ

Does dummyvar support missing labels?⌄

Yes. Numeric NaN, empty text, and <missing> text are treated as missing; missing numeric rows produce NaN dummy values.

Related Stats functions

Summary

binocdf · boxplot · cdf · cdfplot · chi2cdf · corr · corrcoef · corrcov · cov · cov2corr · 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

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

Random

binornd · bootstrp · datasample · dividerand · exprnd · gamrnd · lhsdesign · mvnrnd · normrnd · random · randsample · rng · trnd · unidrnd · unifrnd · wblrnd

Hist

histc · histcounts · histcounts2

Options

statget · statset

Open-source implementation

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

  • View the source for dummyvar 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.

Getting started · Benchmarks · Pricing

Download RunMat

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

Download RunMatOpen Sandbox
On this page
  • Syntax
  • Inputs
  • Returns
  • Errors
  • How dummyvar works
  • Example
  • Encode numeric group levels
  • Using dummyvar with coding agents
  • FAQ
  • Related Stats functions
  • Summary
  • Ml
  • Random
  • Hist
  • Options
  • Open-source implementation
  • About RunMat