我想计算2维数组的项目 当我按批处理索引递增时:
a = np.zeros((3,3))
i = [2,0,2] # indices in axis 0
j = [1,2,1] # indices in axis 1
a[i,j] += 1
输出
array([[0., 0., 1.],
[0., 0., 0.],
[0., 1., 0.]])
问题:
由于索引重复,a[2,1] += 1
仅出现一次。有没有办法使它发生多次,所以结果将是
array([[0., 0., 1.],
[0., 0., 0.],
[0., 2., 0.]])
答案 0 :(得分:0)
这可能有点不直观,但是numpy
在索引中对待list
和tuple
的方式有所不同,例如:a[[2, 1]] += 1
向行{{1}添加一个}和1
,而2
向单元格a[(2, 1)] += 1
添加一个。
就您而言,您可能只想要
(2, 1)