【发布时间】:2018-03-01 10:27:39
【问题描述】:
如果我有这样的多维数组:
a = np.array([[9,9,9],[9,0,9],[9,9,9]])
我想获取该数组中每个索引的数组,如下所示:
i = np.array([[0,0],[0,1],[0,2],[1,0],[1,1],...])
我发现的一种方法是这样的,使用np.indices:
i = np.transpose(np.indices(a.shape)).reshape(a.shape[0] * a.shape[1], 2)
但这似乎有点笨拙,尤其是考虑到np.nonzero 的存在,这几乎可以满足我的要求。
是否有一个内置的 numpy 函数可以生成 2D numpy 数组中每个项目的索引数组?
【问题讨论】:
-
我刚刚想到的另一种方法是
np.transpose(np.nonzero(a == a)),但这比使用indices和reshape几乎更奇怪
标签: python arrays numpy multidimensional-array