numpy——索引

本文详细介绍了NumPy数组的五种索引方式:整数索引、切片索引、dots索引、整数数组索引和布尔索引。切片索引是重点,不仅涉及一维数组的切片,还包括二维数组的切片操作。dots索引允许使用'...'来简化多维索引。整数数组索引则允许同时选取多个元素。布尔索引通过布尔数组来筛选目标数组。这些索引技术是高效操作和分析NumPy数组的关键。
摘要由CSDN通过智能技术生成

       前言:索引是很多数据结构的基础功能,因此,我们常见的索引都是简洁而规范的。下面介绍numpy中常见的五种索引,它们分别是整数索引、切片索引、dots索引、整数数组索引、布尔索引。

一、整数索引

这部分很简单,直接看代码: 

运行结果: 

 

二、切片索引 

1、原理:切片操作是指抽取数组的一部分元素生成新数组。对 python 列表进行切片操作得到的数组是原数组的副本,而对 Numpy 数据进行切片操作得到的数组则是指向相同缓冲区的视图。
         如果想抽取(或查看)数组的一部分,必须使用切片语法,也就是,把几个用冒号( start:stop:step )隔开的数字置于方括号内。
        为了更好地理解切片语法,还应该了解不明确指明起始和结束位置的情况。如省去第一个数字,numpy 会认为第一个数字是0;如省去第二个 数字,numpy 则会认为第二个数字是数组的大索引值;如省去后一个数字,它将会被理解为1,也就是抽取所有元素而不再考虑间隔。
 

2、对一维数组的切片(实践出真知,我们还是直接看代码)

3、对二维数组的切片

机制:通过对每个以逗号分隔的维度执行单独的切片,你可以对多维数组进行切片。因此,对于二维数组,我们的第一片定义了行的切片,第二片定义了列的切片。
 

看代码:

 对于第二片的使用也可以参考2中我写的代码的第五行及其运行结果

三、dots索引 

1、NumPy 允许使用 ... 表示足够多的冒号来构建完整的索引列表。
比如,如果 x 是 5 维数组:
1. x[1,2,...] 等于 x[1,2,:,:,:]

2. x[...,3] 等于 x[:,:,:,:,3]

3. x[4,...,5,:] 等于 x[4,:,:,5,:]
 

【总结:数组有几维,中括号中的片就有几个】 

 

 

四、整数数组索引 

1、方法:方括号内传入多个索引值,可以同时选择多个元素。 

 

五、布尔索引 

这一部分也很简单,方法机制为:通过一个布尔数组来索引目标数组 

总结 

索引的难点在于切片索引,这也是numpy索引的重点 ,是后面其它索引方法的基础

 

 

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值