python数组切片,这里发生了什么?

问题描述 投票:0回答:1

我被一个关于python数组分片的问题卡住了。

我有两个 numpy.ndarrays:

img 是一个1d数组(256个长度)

optimised 是一个二维阵列(231x50)

结果是如何构成的?

result = img[optimised.astype('uint8')]  # result is a 2d 231x50 array

在javascript中有没有类似的方法?

python arrays numpy slice
1个回答
1
投票

这个例子应该能说明发生了什么。每个值从 a 指数 b 并放在同一个地方。所以 a[0, 0] 是1和 b[1] 是28,所以在所得数组中 [0, 0] 元素将为28。

>>> a
array([[1, 0],
       [0, 1]])
>>> b
array([13, 28])
>>> b[a]
array([[28, 13],
       [13, 28]])
© www.soinside.com 2019 - 2024. All rights reserved.