如何从矩阵的所有列中减去相同的数组?

时间:2018-11-06 21:26:26

标签: python arrays matrix

如何从矩阵的所有列中减去相同的数组?我不能用于循环。

例如我有w=([3,2],[4,3])和v=(1,1),我想要w-v=([2,1],[3,2])

3 个答案:

答案 0 :(得分:0)

您在numpy工作吗?

就像

一样简单
w = np.array([[3,2], [4,3]])
v = np.array([1,1])
result = w-v

这对于numpy称为example from the docs来说是一项有用的技能。

答案 1 :(得分:0)

您可以使用这样的生成器表达式:

tuple([a - b for a, b in zip(r, v)] for r in w)

这将返回:

([2, 1], [3, 2])

答案 2 :(得分:0)

迭代并更新列表w的值

for idx,tup in enumerate(zip(w,v)):
    for inner_idx,k in enumerate(tup[0]):
        w[idx][inner_idx]=k-tup[1]

print(w)#([2, 1], [3, 2])