python numpy数组的索引和切片的操作方法


Posted in Python onOctober 20, 2018

NumPy - 简介

NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。

Numeric,即 NumPy 的前身,是由 Jim Hugunin 开发的。 也开发了另一个包 Numarray ,它拥有一些额外的功能。 2005年,Travis Oliphant 通过将 Numarray 的功能集成到 Numeric 包中来创建 NumPy 包。 这个开源项目有很多贡献者。

NumPy 操作

使用NumPy,开发人员可以执行以下操作:

•数组的算数和逻辑运算。

•傅立叶变换和用于图形操作的例程。

•与线性代数有关的操作。 NumPy 拥有线性代数和随机数生成的内置函数。

numpy库多维数组的类型和列表的类型非常类似,同样有索引和切片功能:

索引:获取数组中特定位置元素的过程

切片:获取数组元素子集的过程

1.一维数组

# 准备一个数组
arr1=np.array(np.arange(9))
arr1

array([0, 1, 2, 3, 4, 5, 6, 7, 8])

# 索引
arr[-1] #8
arr1[arr1.size-2] #7
arr1[arr1.size-9] #0 
# 切片 :[start:end:step]
arr1[1:4] #左开右闭的区间
arr1[1:5:2] #array([1,3])
arr1[::-1] # 反向取所有,-1变成了步长

2.二维数组

# 准备一个二维数组
arr2=np.array([
 np.arange(1,4),
 np.arange(5,8)
])

arr2

array([[1, 2, 3],
 [5, 6, 7]])

# 索引
arr2[0][2] # 3
arr2[0,2] # 3
# 切片
arr2[0,] # array([1,2,3]) 
arr2[0,::] # 同上
arr2[0,0:3] #array([1,2])

3.多维数组

arr4=np.arange(1,25).reshape(2,3,4)
arr4

array([[[ 1, 2, 3, 4],
 [ 5, 6, 7, 8],
 [ 9, 10, 11, 12]],
 [[13, 14, 15, 16],
 [17, 18, 19, 20],
 [21, 22, 23, 24]]])

arr4[1][2][2] # 23
arr4[1,1,1] #18
arr3[1,1,] # array([17,18,19,20])
arr4[1,1,::] # 同上
arr4[1,1,::-1] # array([20, 19, 18, 17])
arr4[0,1:3] 
#array([[ 5, 6, 7, 8],
  #[ 9, 10, 11, 12]])
arr4[:1,1] #array([ 6, 18])
b[1,:,2] #array([15, 19, 23])
b[1,...] 
#array([[13, 14, 15, 16],
 # [17, 18, 19, 20],
 # [21, 22, 23, 24]])
b[0,::-1,-1] #array([12, 8, 4])
b[:,:,-1][::-1][:,-1] #array([24, 12])

总结

以上所述是小编给大家介绍的python numpy数组的索引和切片的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
Python使用Socket(Https)Post登录百度的实现代码
May 18 Python
Go语言基于Socket编写服务器端与客户端通信的实例
Feb 19 Python
django表单实现下拉框的示例讲解
May 29 Python
Pandas过滤dataframe中包含特定字符串的数据方法
Nov 07 Python
python图形工具turtle绘制国际象棋棋盘
May 23 Python
django foreignkey外键使用的例子 相当于left join
Aug 06 Python
Python 50行爬虫抓取并处理图灵书目过程详解
Sep 20 Python
详解使用django-mama-cas快速搭建CAS服务的实现
Oct 30 Python
Python字符串函数strip()原理及用法详解
Jul 23 Python
python 使用三引号时容易犯的小错误
Oct 21 Python
详解matplotlib绘图样式(style)初探
Feb 03 Python
Python学习之包与模块详解
Mar 19 Python
详解Python字典小结
Oct 20 #Python
在Python dataframe中出生日期转化为年龄的实现方法
Oct 20 #Python
Django中的ajax请求
Oct 19 #Python
Tesserocr库的正确安装方式
Oct 19 #Python
Python中Proxypool库的安装与配置
Oct 19 #Python
在cmder下安装ipython以及环境的搭建
Oct 19 #Python
破解安装Pycharm的方法
Oct 19 #Python
You might like
类之Prototype.js学习
2007/06/13 Javascript
javascript 操作文件 实现方法小结
2009/07/02 Javascript
javascript复制对象使用说明
2011/06/28 Javascript
在线一元二次方程计算器实例(方程计算器在线计算)
2013/12/22 Javascript
JS不间断向上滚动效果代码
2013/12/25 Javascript
js 获取input点选按钮的值的方法
2014/04/14 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
javascript中attribute和property的区别详解
2014/06/05 Javascript
使用text方法获取Html元素文本信息示例
2014/09/01 Javascript
JavaScript使用addEventListener添加事件监听用法实例
2015/06/01 Javascript
jQuery子元素过滤选择器用法示例
2016/09/09 Javascript
将form表单通过ajax实现无刷新提交的简单实例
2016/10/12 Javascript
JS判断输入的字符串是否是数字的方法(正则表达式)
2016/11/29 Javascript
JS中的数组转变成JSON格式字符串的方法
2017/05/09 Javascript
在vue项目中使用md5加密的方法
2018/09/14 Javascript
JS使用栈判断给定字符串是否是回文算法示例
2019/03/04 Javascript
vue + typescript + 极验登录验证的实现方法
2019/06/27 Javascript
Nodejs + sequelize 实现增删改查操作
2020/11/07 NodeJs
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
2015/04/28 Python
python 排序算法总结及实例详解
2016/09/28 Python
python3库numpy数组属性的查看方法
2018/04/17 Python
Python爬虫——爬取豆瓣电影Top250代码实例
2019/04/17 Python
浅谈SciPy中的optimize.minimize实现受限优化问题
2020/02/29 Python
Python爬虫headers处理及网络超时问题解决方案
2020/06/19 Python
HTML5通用接口详解
2016/06/12 HTML / CSS
美国一家主打母婴用品的团购网站:zulily
2017/09/19 全球购物
sort命令的作用和用法
2013/08/25 面试题
交通事故和解协议书
2014/09/25 职场文书
个人诉讼委托书范本
2014/10/17 职场文书
个人委托函范文
2015/01/29 职场文书
2015年保送生自荐信
2015/03/24 职场文书
2015年团队工作总结范文
2015/05/04 职场文书
2019个人工作态度自我评价
2019/04/24 职场文书
2019年二手房买卖合同范本
2019/10/14 职场文书
六年级作文之预言作文
2019/10/25 职场文书
关于Numpy之repeat、tile的用法总结
2021/06/02 Python