# array functions

Work on whole ranges at once and return multiple values.

33 functions.

- [ARRAY_CONSTRAIN](https://deepcalc.com/docs/functions/array-constrain.md): truncates a range to at most the given rows and columns
- [ARRAYFORMULA](https://deepcalc.com/docs/functions/arrayformula.md): evaluates an expression across a range (this engine already spills, so it is a pass-through for sheets compatibility)
- [ARRAYTOTEXT](https://deepcalc.com/docs/functions/arraytotext.md): converts array to text representation
- [BYCOL](https://deepcalc.com/docs/functions/bycol.md): applies lambda to each column of array
- [BYROW](https://deepcalc.com/docs/functions/byrow.md): applies lambda to each row of array
- [CHOOSECOLS](https://deepcalc.com/docs/functions/choosecols.md): returns the specified columns from an array
- [CHOOSEROWS](https://deepcalc.com/docs/functions/chooserows.md): returns the specified rows from an array
- [DROP](https://deepcalc.com/docs/functions/drop.md): removes rows or columns from the start or end of an array
- [EXPAND](https://deepcalc.com/docs/functions/expand.md): pads an array to a given size with a fill value
- [FILTER](https://deepcalc.com/docs/functions/filter.md): returns the rows or columns of a range that meet a condition
- [FLATTEN](https://deepcalc.com/docs/functions/flatten.md): collapses one or more ranges into a single column
- [HSTACK](https://deepcalc.com/docs/functions/hstack.md): joins arrays side by side into one array
- [ISOMITTED](https://deepcalc.com/docs/functions/isomitted.md): checks if lambda argument is omitted
- [LAMBDA](https://deepcalc.com/docs/functions/lambda.md): creates a custom reusable function
- [LET](https://deepcalc.com/docs/functions/let.md): assigns names to values in a formula
- [MAKEARRAY](https://deepcalc.com/docs/functions/makearray.md): creates array from lambda over indices
- [MAP](https://deepcalc.com/docs/functions/map.md): maps lambda over array values
- [RANDARRAY](https://deepcalc.com/docs/functions/randarray.md): returns an array of random numbers
- [REDUCE](https://deepcalc.com/docs/functions/reduce.md): reduces array to value with lambda
- [SCAN](https://deepcalc.com/docs/functions/scan.md): scans array with lambda keeping intermediates
- [SEQUENCE](https://deepcalc.com/docs/functions/sequence.md): generates a sequence of numbers as an array
- [SORT](https://deepcalc.com/docs/functions/sort.md): sorts the contents of a range or array
- [SORTBY](https://deepcalc.com/docs/functions/sortby.md): sorts a range or array by values in a corresponding range
- [SORTN](https://deepcalc.com/docs/functions/sortn.md): the first n rows of a range after sorting
- [TAKE](https://deepcalc.com/docs/functions/take.md): returns rows or columns from the start or end of an array
- [TOCOL](https://deepcalc.com/docs/functions/tocol.md): returns an array as a single column
- [TOROW](https://deepcalc.com/docs/functions/torow.md): returns an array as a single row
- [TRANSPOSE](https://deepcalc.com/docs/functions/transpose.md): flips the orientation of a range or array
- [TRIMRANGE](https://deepcalc.com/docs/functions/trimrange.md): trims empty rows and columns from the edges of a range
- [UNIQUE](https://deepcalc.com/docs/functions/unique.md): returns the distinct values from a range or array
- [VSTACK](https://deepcalc.com/docs/functions/vstack.md): stacks arrays on top of each other into one array
- [WRAPCOLS](https://deepcalc.com/docs/functions/wrapcols.md): wraps a row or column into a 2-D array by columns
- [WRAPROWS](https://deepcalc.com/docs/functions/wraprows.md): wraps a row or column into a 2-D array by rows

## navigate

- [function index](https://deepcalc.com/docs/functions.md)
- [error values](https://deepcalc.com/docs/errors.md) · [concepts](https://deepcalc.com/docs/concepts.md) · [limits](https://deepcalc.com/docs/limits.md)

source: https://deepcalc.com/docs/functions/array-functions