MatrixQ
詳細
- MatrixQ[expr]は,expr がリストであり,そのリストの各要素がリストである要素を含まない同じ長さのリストである場合,あるいはそのような指揮を表す場合にのみTrueとなる.
- 行列は,リストの長方形リスト,深さ2の配列,または階数2の配列としても知られている.
- 行列の表現として可能なものには以下が含まれる. »
-
{{…},{…},…}またはList[List[…],…] 通常のリストのリスト SparseArray[…] 疎行列 CauchyMatrix[…],PermutationMatrix[…],QuantityArray[…],SymmetrizedArray[…]等 構造化行列 {v1,v2,…}.ここで,VectorQ[vi]はTrueである 通常のベクトル,疎ベクトル,および/または構造化ベクトルのリスト » - 空リスト{}は長さ 0 のベクトルであり,したがって行列ではない. »
- test のMatrixQ[expr,test]における数値行列での使用に対する一般的な値には,次のものが含まれる.
-
NumberQ expr が明示的な数値からなる行列であるかどうかを判定する NumericQ expr が数値表現からなる行列であるかどうかを判定する Positive expr が正の数からなる行列であるかどうかを判定する RealValuedNumberQ expr が頭部Integer,RationalまたはRealを持つ数からなる行列かどうかを判定する RealValuedNumericQ expr が実数値を持つ数式からなる行列かどうかを判定する - 一般に用いられる構造テストには,次のものが含まれる.
-
IntegerQ expr が整数の行列かどうかを判定する PolynomialQ[#,x]& expr が x に関する多項式の行列かどうかを判定する QuantityQ expr が数量の行列かどうかを判定する StringQ expr が文字列の行列かどうかを判定する
例題
すべて開く すべて閉じる例 (3)
MatrixQ[{{a, b}, {3, 4}}]MatrixQ[{{a, b}, {3}}]MatrixQ[{1, 2, 3}]MatrixQ[Array[a, {2, 2, 2}]]MatrixQ[RandomReal[1, {3, 3}], NumberQ]MatrixQ[RandomReal[1, {3, 3}], IntegerQ]スコープ (8)
MatrixQ[SparseArray[{{1, 3} -> a, {5, 1} -> b}]]MatrixQ[PermutationMatrix[{1, 3, 2}]]MatrixQ[Quantity[{{1.3, 2.2, 3.3}, {3.1, 3.3, 2.2}}, "Meters"]]m = {{1, 2, 3}, SparseArray[Automatic, {3}, 0, {1, {{0, 1}, {{3}}}, {a}}], SymmetrizedArray[StructuredArray`StructuredData[{3}, {{{1} -> c}, {}}]]};
MatrixQ[m]m//MatrixFormMatrixQ[{{E, 1}, {π, 2}, {Sin[1], Cos[2]}}, NumericQ]明示的な数を持つ行列かどうかテストする:Test for a matrix with explicit numbers:
MatrixQ[{{E, 1}, {π, 2}, {Sin[1], Cos[2]}}, NumberQ]MatrixQ[{{Pi, Sin[1]}, {Cos[2], E}}, RealValuedNumericQ]MatrixQ[Im[{{1, 2.}, {3 / 4, 5`20}}], RealValuedNumberQ]MatrixQ[{{1, 2}, {3, 4}}, IntegerQ]小数第2位で丸めたときに整数となる数から成る行列についてテストする:
MatrixQ[{{1, 1.005}, {1.997, 4.002}}, Abs[# - Round[#]] < 0.005&]MatrixQ[{{"a", "b"}, {"c", "d"}}, StringQ]MatrixQ[{{"a", "b"}, {c, d}}, StringQ]MatrixQ[{{1, x}, {1 + x, x ^ 2 + 2x + 1}}, PolynomialQ[#, x]&]MatrixQ[{{1, x}, {Sin[x], Exp[x]}}, PolynomialQ[#, x]&]テストを使ってMatrixQを一般化する:
MatrixQ[Array[a, {2, 2, 2}], ListQ]MatrixQ[Array[a, {2, 2, 2}]]アプリケーション (1)
特性と関係 (6)
m = RandomReal[1, {3, 2}];vecq = Map[VectorQ, m]lens = Map[Length, m]Apply[And, Append[vecq, Apply[Equal, lens]]]MatrixQ[m]MatrixQ[{}]VectorQ[{}]A list of empty lists is considered an
matrix:
MatrixQ[{{}, {}, {}}]Dimensions[{{}, {}, {}}]MatrixQ[expr]はArrayQ[expr,2]に等しい:
m = RandomReal[1, {2, 2}]{ArrayQ[m, 2], MatrixQ[m]}MatrixQ[expr]はArrayQ[expr,2]に等しい:
{ArrayQ[m, 2, MachineNumberQ], MatrixQ[m, MachineNumberQ]}{ArrayQ[m, 2, IntegerQ], MatrixQ[m, IntegerQ]}MatrixQ[arr,MatrixQ]は,深さ4の配列 arr に対してTrueを返す:
arr = Array[a, {2, 3, 4, 5}];
{ArrayQ[arr, 4], MatrixQ[arr, MatrixQ]}この陳述の逆はFalseである:
narr = {Array[a, {3, 4, 5}], Array[a, {3, 4, 6}]};
{ArrayQ[narr, 4], MatrixQ[narr, MatrixQ]}MatrixQは,事実上,AllowedHeads"ListLike"を使う:
mat = {SparseArray[{1, 2}], QuantityArray[{1, 2}, "Meters"]};
expr = f[f[1, 2], f[3, 4]];{MatrixQ[mat], MatrixQ[expr]}{ArrayDepth[mat, AllowedHeads -> "ListLike"], ArrayDepth[expr, AllowedHeads -> "ListLike"]}{Dimensions[mat, AllowedHeads -> "ListLike"], Dimensions[expr, AllowedHeads -> "ListLike"]}テクニカルノート
関連するガイド
-
▪
- 判定式 ▪
- 行列の部分 ▪
- 行列と線形代数 ▪
- 行列述語 ▪
- GPU計算 ▪
- リストの要素 ▪
- NVIDIAを使ったGPU計算 ▪
- Appleを使ったGPU計算
履歴
1988 で導入 (1.0) | 2003 で更新 (5.0)
テキスト
Wolfram Research (1988), MatrixQ, Wolfram言語関数, https://reference.wolfram.com/language/ref/MatrixQ.html (2003年に更新).
CMS
Wolfram Language. 1988. "MatrixQ." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2003. https://reference.wolfram.com/language/ref/MatrixQ.html.
APA
Wolfram Language. (1988). MatrixQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MatrixQ.html
BibTeX
@misc{reference.wolfram_2026_matrixq, author="Wolfram Research", title="{MatrixQ}", year="2003", howpublished="\url{https://reference.wolfram.com/language/ref/MatrixQ.html}", note=[Accessed: 29-October-2026]}
BibLaTeX
@online{reference.wolfram_2026_matrixq, organization={Wolfram Research}, title={MatrixQ}, year={2003}, url={https://reference.wolfram.com/language/ref/MatrixQ.html}, note=[Accessed: 29-October-2026]}