从numpy数组中的第一个值减去

时间:2017-07-26 14:41:35

标签: python arrays numpy

有这样的numpy数组:

a = np.array([35,2,160,56,120,80,1,1,0,0,1])

我想从数组的第一个元素中减去自定义值(例如,5)。基本上可以这样做:a[0] - 5

但是如何将此结果应用于初始数组并将第一个值替换为答案?

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用:

a[0] -= 5  # use -=

这会将a变为:

>>> a = np.array([35,2,160,56,120,80,1,1,0,0,1])
>>> a[0] -= 5
>>> a
array([ 30,   2, 160,  56, 120,  80,   1,   1,   0,   0,   1])

对于大多数操作(+-*/等),有一个" inplace"等效(+=-=*=/=等),它将使用正确的操作数应用该操作并将其存回。

请注意,如果你想减去所有元素,你不应该使用Python for循环,有更有效的方法。

相关问题