将特定坐标增加到numpy数组

时间:2016-01-02 11:07:58

标签: python arrays numpy

我是numpy的新手,我想使用numpy增加数组的特定位置(所以它更快)。

要清楚我有一个#34; Info"数组中的坐标列表。类。

flash[:alert]

目前我这样做:

class info:
    def __init__(self, timestamp, position):
        self.timestamp = timestamp
        self.position = position

"热图"也是一个大小宽度和高度的numpy数组。

我想知道是否还有更多" numpy"这样做的方法。

编辑:我所寻找的是世界" indice",对不起。答案是:Increment given indices in a matrix

1 个答案:

答案 0 :(得分:0)

例如,你可以使用这样的东西吗?

import numpy as np
a = np.arange(16).reshape(4,4)
b = [0,0]
c = (1,1)
d = (np.array([2]),np.array([2]))
e = ([3],[3])
a[b] = 100  # b isn't a tuple so it doesn't work the way the others do
a[c] = 200
a[d] = 300
a[e] = 400
print a

[[100 100 100 100]
 [  4 200   6   7]
 [  8   9 300  11]
 [ 12  13  14 400]]

所以你可以考虑

self.heatmap[tuple(data.position)] += 1