【发布时间】:2020-12-05 12:49:52
【问题描述】:
我有 M 向量,每个向量都有 N 条目(MxN 矩阵,如果你愿意的话):
A = [A1, A2, ... , AN]
B = [B1, B2, ... , BN]
...
Z = [Z1, Z2, ... , ZN]
我想将这些转换为:
[[[A1, 0, ... , 0],
[0, B1, ... , 0],
...
[0, 0, ... , Z1]],
[[A2, 0, ... , 0],
[0, B2, ... , 0],
...
[0, 0, ... , Z2]],
...
[[AN, 0, ... , 0],
[0, BN, ... , 0],
...
[0, 0, ... , ZN]]]
我们的目标是不完全不使用 for 循环,而仅通过 numpy 操作来实现这一点。想法?
【问题讨论】:
-
嗨 Chanto,你试过了吗?
-
嗨,伊万。是的,我试过
np.diag,但它只适用于一维或二维数组,而不是我想要的方式。现在我正在尝试用矩阵乘法来实现它。 -
这是一个很模糊的问题。有多种方法可以做到这一点。你试过 np.fill_diagonal numpy.org/doc/stable/reference/generated/…
标签: python arrays numpy matrix diagonal