MatrixQ[expr] gives True if expr is a list of lists or a two-dimensional SparseArray object that can represent a matrix, and gives False otherwise.
MatrixQ[expr, test] gives True only if test yields True when applied to each of the matrix elements in expr.
MatrixQ[expr] gives True only if expr is a list, and each of its elements is a list of the same length, containing no elements that are themselves lists, or is a two-dimensional SparseArray object.
MatrixQ[expr, NumberQ] tests whether expr is a numerical matrix.
See Section 2.3.5 and Section 3.7.3.
See also: VectorQ, ArrayQ, ArrayDepth.
Related package: LinearAlgebra`MatrixManipulation`.
New in Version 1; modified in 2.