ordinal — Create an ordinal categorical array object.

ordinal(A) creates a categorical object whose categories are ordered. It is a compatibility constructor equivalent to categorical(..., 'Ordinal', true).

Syntax

B = tabularBuiltin(args...)

Inputs

NameTypeRequiredDefaultDescription
argsAnyVariadicInput values and name-value options.

Returns

NameTypeDescription
outAnyResult value.

Errors

IdentifierWhenMessage
RunMat:table:InvalidArgumentArguments or table metadata are invalid.table: invalid argument
RunMat:table:InvalidIndexTable indexing is invalid.table: invalid index
RunMat:table:InvalidVariableA table variable name or value is invalid.table: invalid variable

How ordinal works

  • String, char, cellstr, numeric, and logical inputs are accepted through the same label conversion path as categorical.
  • ordinal(A) derives sorted unique categories from non-missing labels.
  • ordinal(A, categories) uses the supplied category order and marks labels not present in that list as missing.
  • ordinal(A, valueset, catnames) maps source values through valueset and stores the corresponding category names from catnames.
  • The returned object has class categorical, stores one-based category codes, and has its Ordinal metadata flag set to true.
  • Equality and relational operators compare category order; categorical-to-categorical comparisons require matching category lists.
  • min and max reduce ordinal categorical arrays by category order and return categorical results; undefined elements follow the numeric NaN behavior of includenan and omitnan, and multi-output forms return numeric indices.

Example

Create an ordered categorical array

O = ordinal({'medium'; 'low'}, {'low','medium','high'})

Expected output:

O = categorical object

Using ordinal with coding agents

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

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

FAQ

How is ordinal different from categorical?

ordinal always sets the categorical Ordinal flag to true, so category order is meaningful for compatibility code that checks ordinal categorical metadata.

Open-source implementation

Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how ordinal 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.