《利用Python》进行数据分析:Numpy基础8 花式索引

时间:2021-10-28 00:14:09
#coding=utf-8
__author__ = 'andy'
import numpy as np

arr=np.empty((8,4))
print(arr)

for i in range(8):
arr[i]=i

print(arr)

#为了以特定顺序选取行子集,只需传入一个用于指定顺序的整数列表或数组即可
print(arr[4])
print(arr[[4,3,0,6]])
print(arr[[-3,-5,-7]])

#reshape创建数组,将在后续高级使用进行讲解
arr1=np.arange(32).reshape((8,4))
print(arr1)


#花式索引行为,得到一维数组
print(arr1[[1,5,7,2],[0,3,1,2]])
#想得到矩阵的行列子集应该是
print(arr1[[1,5,7,2]][:,[0,3,1,2]])
#或者是使用np.ix_函数,将两个一维数组转换为一个用于选取方形区域的索引器
print(arr1[np.ix_([1,5,7,2],[0,3,1,2])])