ArrayQ

ArrayQ[expr]

gives True if expr is a full array or a SparseArray object, and gives False otherwise.

ArrayQ[expr,patt]

requires expr to be a full array with a depth that matches the pattern patt.

ArrayQ[expr,patt,test]

requires also that test yield True when applied to each of the array elements in expr.

Details

  • In a full array all parts at a particular level must be lists of the same length.
  • ArrayQ[expr,1|2] tests whether expr is either a vector or a matrix.
  • ArrayQ[expr,_,NumberQ] tests whether expr is a numerical array at all levels.

Examples

open allclose all

Basic Examples  (2)

A vector of numbers is a full array:

A vector in which one element is itself a list is not a full array:

A ragged collection of nested lists is not a full array:

Scope  (5)

Test for a vector:

Test for a matrix:

Test for a vector or a matrix:

Test for a numeric vector:

Test for an array of any depth with numeric entries:

Applications  (1)

Define a function that only evaluates with arrays:

This constructs the tensor product interpolating polynomial assuming integer coordinates:

The polynomial interpolates the data:

Properties & Relations  (3)

VectorQ is a special case of ArrayQ:

MatrixQ is a special case of ArrayQ:

ArrayQ effectively uses AllowedHeads"ListLike":

Wolfram Research (2003), ArrayQ, Wolfram Language function, https://reference.wolfram.com/language/ref/ArrayQ.html.

Text

Wolfram Research (2003), ArrayQ, Wolfram Language function, https://reference.wolfram.com/language/ref/ArrayQ.html.

BibTeX

@misc{reference.wolfram_2021_arrayq, author="Wolfram Research", title="{ArrayQ}", year="2003", howpublished="\url{https://reference.wolfram.com/language/ref/ArrayQ.html}", note=[Accessed: 05-August-2021 ]}

BibLaTeX

@online{reference.wolfram_2021_arrayq, organization={Wolfram Research}, title={ArrayQ}, year={2003}, url={https://reference.wolfram.com/language/ref/ArrayQ.html}, note=[Accessed: 05-August-2021 ]}

CMS

Wolfram Language. 2003. "ArrayQ." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/ArrayQ.html.

APA

Wolfram Language. (2003). ArrayQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ArrayQ.html