select numpy数组不同行不同列的元素
select elements of different columns at different rows of numpy array
In [62]: a
Out[62]:
array([[1, 2],
[3, 4]])
有没有简单的方法得到[2,3],即第一行的第二个元素和第二行的第一个元素?我有每一行的索引列表,即本例中的 [1,0]。我已经尝试了 [:,[1,0]],但它不起作用。
您需要为所有需要的元素同时指定 i 和 j。例如:
import numpy as np
a = np.array([[1, 2],
[3, 4]])
i = [0, 1]
j = [1, 0]
print(a[i, j])
# [2, 3]
如果您需要每一行中的一项,您可以使用 i = np.arange(a.shape[0])
In [62]: a
Out[62]:
array([[1, 2],
[3, 4]])
有没有简单的方法得到[2,3],即第一行的第二个元素和第二行的第一个元素?我有每一行的索引列表,即本例中的 [1,0]。我已经尝试了 [:,[1,0]],但它不起作用。
您需要为所有需要的元素同时指定 i 和 j。例如:
import numpy as np
a = np.array([[1, 2],
[3, 4]])
i = [0, 1]
j = [1, 0]
print(a[i, j])
# [2, 3]
如果您需要每一行中的一项,您可以使用 i = np.arange(a.shape[0])