【发布时间】:2017-11-07 17:22:48
【问题描述】:
我有一个 4 x 2 矩阵,即长度为 2 的 numpy 向量的 numpy 向量(长度为 4)。例如 a = [[1,1],[1,2],[3,5],[8,3]] 我想从每一行中减去向量 b = [3,6] 。 我尝试执行以下操作:
np.vectorize(lamda x: x-b)(a)
但我得到错误 ValueError:
setting an array element with a sequence.
有人可以解释一下为什么以及如何正确地做到这一点吗?
【问题讨论】:
-
试试:
a - b[:,None],其中a和b是数组和向量。 -
对于您的情况,只需
a-b即可遵循广播规则。