首页 > 编程笔记 > Python笔记 阅读:6

NumPy花式索引的用法(附带实例)

NumPy 会比一般的 Python 序列提供更多的索引方式,包括整数数组索引、布尔索引及花式索引。

花式索引将索引数组的值作为目标数组某个轴的下标来取值:
花式索引跟切片不一样,它总是将数据复制到新数组中。比如传入顺序索引数组:
x=np.arange(32).reshape((8,4))
print (x[[4,2,1,7]])
输出结果为:

[[16 17 18 19]
[ 8  9 10 11]
[ 4  5  6  7]
[28 29 30 31]]


传入倒序索引数组:
x=np.arange(32).reshape((8,4))
print (x[[-4,-2,-1,-7]])
输出结果为:

[[16 17 18 19]
[24 25 26 27]
[28 29 30 31]
[ 4  5  6  7]]


传入多个索引数组(要使用 np.ix_):
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]]

相关文章