math floor

For math.

Returns the floor of a number (largest integer less than or equal to that number).

Command Type

built-in

Signature

> math floor {flags} ...rest

Parameters

  • ...rest: The cell-paths/columns to operate on.

Input/output types:

input output
number int
duration duration
filesize filesize
list<number> list<int>
list<duration> list<duration>
list<filesize> list<filesize>
range list<number>
record record

Examples

Apply the floor function to a list of numbers.

> [1.5 2.3 -3.1] | math floor
╭───┬────╮
│ 0 │  1 │
│ 1 │  2 │
│ 2 │ -4 │
╰───┴────╯

Apply the floor function to list-valued columns in a record.

> {alice: [1.2 2.7 3.5], bob: [4.1 5.9]} | math floor
╭───────┬───────────╮
│       │ ╭───┬───╮ │
│ alice │ │ 0 │ 1 │ │
│       │ │ 1 │ 2 │ │
│       │ │ 2 │ 3 │ │
│       │ ╰───┴───╯ │
│       │ ╭───┬───╮ │
│ bob   │ │ 0 │ 4 │ │
│       │ │ 1 │ 5 │ │
│       │ ╰───┴───╯ │
╰───────┴───────────╯

Apply the floor function to a single column using a cell path.

> {alice: [1.2 2.7 3.5], bob: [4.1 5.9]} | math floor alice
╭───────┬──────────────╮
│       │ ╭───┬───╮    │
│ alice │ │ 0 │ 1 │    │
│       │ │ 1 │ 2 │    │
│       │ │ 2 │ 3 │    │
│       │ ╰───┴───╯    │
│       │ ╭───┬──────╮ │
│ bob   │ │ 0 │ 4.10 │ │
│       │ │ 1 │ 5.90 │ │
│       │ ╰───┴──────╯ │
╰───────┴──────────────╯

Filesize values are already whole bytes, so flooring is a no-op.

> 2.1KB | math floor
2.1 kB

Notes

Filesize and duration values are stored as integers in base units (bytes and nanoseconds). With no display unit to round against, math floor is the identity function for those types.

Ported from nushell/nushell.github.io. Copyright (c) 2021 Nushell Project. MIT License.