Type in Google’s function list
Array functions
Functions that work on whole ranges at once and return arrays. Google prints 29 Array function(s) in its Google Sheets function list.
| Function | Syntax as printed | Description from Google Docs Editors Help |
|---|---|---|
| ARRAY_CONSTRAIN | ARRAY_CONSTRAIN(input_range, num_rows, num_cols) | Constrains an array result to a specified size. |
| BYCOL | BYCOL(array_or_range, LAMBDA) | Groups an array by columns by application of a LAMBDA function to each column. |
| BYROW | BYROW(array_or_range, LAMBDA) | Groups an array by rows by application of a LAMBDA function to each row. |
| CHOOSECOLS | CHOOSECOLS(array, col_num1, [col_num2]) | Creates a new array from the selected columns in the existing range. |
| CHOOSEROWS | CHOOSEROWS(array, row_num1, [row_num2]) | Creates a new array from the selected rows in the existing range. |
| FLATTEN | FLATTEN(range1,[range2,...]) | Flattens all the values from one or more ranges into a single column. |
| FREQUENCY | FREQUENCY(data, classes) | Calculates the frequency distribution of a one-column array into specified classes. |
| GROWTH | GROWTH(known_data_y, [known_data_x], [new_data_x], [b]) | Given partial data about an exponential growth trend, fits an ideal exponential growth trend and/or predicts further values. |
| HSTACK | HSTACK(range1; [range2, …]) | Appends ranges horizontally and in sequence to return a larger array. |
| LINEST | LINEST(known_data_y, [known_data_x], [calculate_b], [verbose]) | Given partial data about a linear trend, calculates various parameters about the ideal linear trend using the least-squares method. |
| LOGEST | LOGEST(known_data_y, [known_data_x], [b], [verbose]) | Given partial data about an exponential growth curve, calculates various parameters about the best fit ideal exponential growth curve. |
| MAKEARRAY | MAKEARRAY(rows, columns, LAMBDA) | Returns an array of specified dimensions with values calculated by application of a LAMBDA function. |
| MAP | MAP(array1, [array2, ...], LAMBDA) | Maps each value in the given arrays to a new value by application of a LAMBDA function to each value. |
| MDETERM | MDETERM(square_matrix) | Returns the matrix determinant of a square matrix specified as an array or range. |
| MINVERSE | MINVERSE(square_matrix) | Returns the multiplicative inverse of a square matrix specified as an array or range. |
| MMULT | MMULT(matrix1, matrix2) | Calculates the matrix product of two matrices specified as arrays or ranges. |
| REDUCE | REDUCE(initial_value, array_or_range, LAMBDA) | Reduces an array to an accumulated result by application of a LAMBDA function to each value. |
| SCAN | SCAN(initial_value, array_or_range, LAMBDA) | Scans an array and produces intermediate values by application of a LAMBDA function to each value. Returns an array of the intermediate values obtained at each step. |
| SUMPRODUCT | SUMPRODUCT(array1, [array2, ...]) | Calculates the sum of the products of corresponding entries in two equal-sized arrays or ranges. |
| SUMX2MY2 | SUMX2MY2(array_x, array_y) | Calculates the sum of the differences of the squares of values in two arrays. |
| SUMX2PY2 | SUMX2PY2(array_x, array_y) | Calculates the sum of the sums of the squares of values in two arrays. |
| SUMXMY2 | SUMXMY2(array_x, array_y) | Calculates the sum of the squares of differences of values in two arrays. |
| TOCOL | TOCOL(array_or_range, [ignore], [scan_by_column]) | Transforms an array or range of cells into a single column. |
| TOROW | TOROW(array_or_range, [ignore], [scan_by_column]) | Transforms an array or range of cells into a single row. |
| TRANSPOSE | TRANSPOSE(array_or_range) | Transposes the rows and columns of an array or range of cells. |
| TREND | TREND(known_data_y, [known_data_x], [new_data_x], [b]) | Given partial data about a linear trend, fits an ideal linear trend using the least squares method and/or predicts further values. |
| VSTACK | VSTACK(range1; [range2, …]) | Appends ranges vertically and in sequence to return a larger array. |
| WRAPCOLS | WRAPCOLS(range, wrap_count, [pad_with]) | Wraps the provided row or column of cells by columns after a specified number of elements to form a new array. |
| WRAPROWS | WRAPROWS(range, wrap_count, [pad_with]) | Wraps the provided row or column of cells by rows after a specified number of elements to form a new array. |
Source: Google Docs Editors Help, “Google Sheets function list” (support.google.com/docs/table/25273), data fetched 28 September 2026. Data month: September 2026. Every function name in Google’s list is placed under one type; a function carries the type the list prints for it.