Numpy 花式索引

#花式索引 

#它是指利用整数数组进行索引,先初始化一个8*4的矩阵
#-----2.1
arr = np.empty((8,4))
# print arr
for i in range(8):
    arr[i] = i
print arr
#为了以特定顺序选取行子集,只需传入一个用于指定顺序的列表或ndarray即可
print arr[[4,3,0,6]]
# print arr[np.array([4,3,0,6])] 
#使用负数索引将会从末尾
print arr[[-3,-5,-7]]

#一次传入多个索引数组会有一点特别。他返回的是一个一维数组,其中元素对应各个索引元组
#---2.2
print "初始化一个数组"
arr = np.arange(32).reshape(8,4)
print arr
print "多个索引数组"
print arr[[1,5,7,2],[0,3,1,2]]#返回一个数组最终的元素(1,0)、(5,3)、(7、1)、(2、2)
#如果要得到矩形区域的话,可以这样
print "得到矩形区域"
print arr[[1,5,7,2]][:,[0,3,1,2]]
#另一种利用np.ix函数,他可以将两个一维的整数数组转化为方形区域的索引器
print arr[np.ix_([1,5,7,2],[0,3,1,2])]
#!!! 花式索引跟切片不一样,总是将数据复制到新的数组中

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值