month — Extract month components from datetime values in MATLAB and RunMat.
month(t) extracts calendar-month values from datetime input. Datetime input supports monthofyear, name, and shortname; documented legacy serial-number and date-text forms support an optional input format.
Syntax
X = month(t)
X = month(t, monthTypeOrFormat)Inputs
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
value | Any | Yes | — | Datetime input. |
t | Any | Yes | — | Legacy serial date number or date text. |
F | StringScalar | Yes | — | Legacy datestr input format. |
Returns
| Name | Type | Description |
|---|---|---|
X | Any | Numeric scalar/tensor result. |
out | Any | Method result. |
Errors
| Identifier | When | Message |
|---|---|---|
RunMat:datetime:InvalidArgument | Arguments or option grammar do not match supported datetime forms. | datetime: invalid argument |
RunMat:datetime:InvalidInput | Input values cannot be parsed/converted/broadcast to a valid datetime result. | datetime: invalid input |
RunMat:datetime:Internal | Internal datetime state or indexing/evaluation failed unexpectedly. | datetime: internal operation failed |
How month works
month(t)accepts datetime scalars and datetime arrays.- The output shape matches the input shape.
- Month values use the standard 1-through-12 numbering.
month(t,'name')andmonth(t,'shortname')return shaped cells of character month names for datetime input.- Documented legacy binary64 serial date numbers and date text return double month numbers with matching shape.
- Single-precision and all eight typed-integer legacy serial inputs are a gated RunMat extension; exact native values are range-checked before one binary64 serial-date conversion.
Does RunMat run month on the GPU?
month does not dispatch a GPU kernel. Explicit resident input is a separately gated RunMat extension, while internal automatic residency can gather transparently.
GPU memory and residency
Documented month forms are host-side. RunMat can admit resident legacy numeric input as an extension, gathers it non-destructively through the exact owner, and returns the documented host result.
Examples
Extract the month from a scalar datetime
t = datetime(2024, 4, 9, 13, 30, 0);
m = month(t)Expected output:
m = 4Extract months from a datetime array
t = datetime([2024 2025], [1 6], [15 20]);
m = month(t)Expected output:
m =
1 6Using month with coding agents
Open a RunMat example with live inputs, then ask the agent to explain how month changes the result.
Run a small month example, explain the result, then change one input and compare the output.
FAQ
What numbering does month use?⌄
It returns January as 1 through December as 12.
Does month preserve the input shape?⌄
Yes. The numeric output has the same size as the input datetime array.
Does month run on the GPU?⌄
No. datetime values are host-side objects, so month executes on the CPU.
Related Datetime functions
Open-source implementation
Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how month is executed, line by line, in Rust.
- View the source for month 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.