【问题标题】:numpy: indexing 1d array with multidimensional indexnumpy:用多维索引索引一维数组
【发布时间】:2018-09-20 14:43:08
【问题描述】:

如何用高维索引数组索引低维数据数组?

例如:给定一个一维数据数组和一个二维索引数组:

data = np.array([11,12,13])
idx = np.array([[0,1],
                [1,2])

我想要一个二维数据数组:

np.array([[11,12],
          [12,13]])

【问题讨论】:

  • 到目前为止你有什么尝试?

标签: numpy numpy-ndarray numpy-indexing


【解决方案1】:

这在 Python / NumPy 中非常简单,感谢advanced Numpy indexing system,您只需使用索引作为切片,例如data[idx].

data = np.array([11,12,13])
idx = np.array([[0,1],
                [1,2]])

# this will produce the correct result
data[idx]
# array([[11, 12],
#        [12, 13]])

【讨论】:

  • 我试过这个,但现在意识到缺少的是确保索引数组必须是 int32。
猜你喜欢
  • 2020-03-25
  • 2015-04-19
  • 1970-01-01
  • 1970-01-01
  • 2018-01-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多