numpy--np.ix_()用法

原理:np.ix_函数就是输入两个数组,产生笛卡尔积的映射关系
给出以下的例子:

import numpy as np 
x=np.arange(32).reshape((8,4))
print (x[np.ix_([1,5,7,2],[0,3,1,2])])

结果如下:

[[ 4  7  5  6]
 [20 23 21 22]
 [28 31 29 30]
 [ 8 11  9 10]]

将输入数组[1,5,7,2]和数组[0,3,1,2]产生笛卡尔积,就是得到(1,0),(1,3),(1,1),(1,2);(5,0),(5,3),(5,1),(5,2);(7,0),(7,3),(7,1),(7,2);(2,0),(2,3),(2,1),(2,2);
就是按照坐标(1,0),(1,3),(1,1),(1,2)取得 x所对应的元素4,7,5,6,(5,0),(5,3),(5,1),(5,2)取得 x 所对应的元素20,23,21,22…以此类推

你可能感兴趣的:(numpy)