如何从下三角矩阵中获取元素列表

How to get a list of elements from the lower triangular matrix

我是 Mathematica 新手。

我有一个下三角矩阵定义如下

A = Table[If[i > j, Subscript[a, i, j], 0], {i, s}, {j, s}];

我想要列表中的下三角元素。例如,当 s = 2 时,列表将包含 listOfElement = {a_{2,1}},对于 s = 3listOfElement = {a_{2,1},a_{3,1},a_{3,2}}

如何在 Mathematica 中执行此操作?

非常感谢您

例如这个

A = RandomReal[{0, 1}, {3, 3}];
MatrixForm[A]
M = First[Dimensions[A]];
Flatten[A[[# + 1 ;;, #]] & /@ Range[M - 1]]

产生:

(0.586886   0.968229    0.543306
 0.107212   0.0492116   0.103052
 0.0569797  0.429895    0.70289
)

{0.107212,0.0569797,0.429895}

您可以将 Pick 与选择矩阵一起使用:

selectionMatrix = LowerTriangularize[ConstantArray[1, {s, s}], -1]

selectionMatrix 现在是一个下三角矩阵,其中包含您想要 A 中的 Pick 个元素。然后你得到 A 的元素,如下所示:

listOfElements = Flatten @ Pick[A, selectionMatrix, 1]

编辑:确保你定义s,当然。