python - 在 python (scipy/numpy) 中组装矩阵

标签 python numpy matrix scipy

我想知道是否有一种简单的方法可以在 python 中沿对角线组装矩阵,如果它们重叠则添加值。这是我从 Matlab 论坛上偷来的一张方便的图表:https://i.sstatic.net/ZunrZ.jpg

目前,我正在尝试实现它以使用一定数量的 2x2 矩阵,但最终目标是让代码组装任意数量的任意大小的矩阵(所有大小相同,最大 4x4)。

最佳答案

我不确定如何对其进行矢量化,但您可以使用 setitem 相当直接地完成它:

k = k1 = np.array([[1,2],[3,4]])   # etc
ks = [k1, k2, k3, k4]
[n] = set(k.shape)
N = len(ks)
A = np.zeros((N+1, N+1))
for i, k in enumerate(ks):
    A[i:i+n, i:i+n] += k

关于python - 在 python (scipy/numpy) 中组装矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50222978/

相关文章:

python - ConfigParser 中的列表

python - 尝试将预测带回到数据帧中的相应行

python - 如何将过滤功能应用于多个列表中的项目?

python - 相机标定opencv python鸟瞰视角变换

python - numpy/python - 你做过的最大的矩阵乘法是多少?你是如何做到的?

python - 为什么变量的值在作为列表附加到 python 列表时会发生变化?

python - pandas 列值到行值

python - '类型错误 : Scalar value for argument 'color' is not numeric' when using opencv-python drawing a circle

python - 为什么 pytorch DataLoader 在 numpy 数组和列表上的行为不同?

Java 使用 Vector 类 - Matrix