




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Python 中的 Numpy 入门教程1、 Numpy 是什么很简单, Numpy 是 Python 的一个科学计算的库,提供了矩阵运算的功能, 其一般与 Scipy 、matplotlib 一起使用。其实, list 已经提供了类似于矩阵的表示形式,不过 numpy 为我们提供了更多的函数。 如果接触过matlab 、scilab ,那么 numpy很好入手。在以下的代码示例中,总是先导入了numpy :复制代码代码如下 :>>> import numpy as np>>> print np.version.version1.6.22 、多维数组多维数组
2、的类型是:numpy.ndarray。使用 numpy.array方法以 list 或 tuple 变量为参数产生一维数组:复制代码代码如下 :>>> print np.array(1,2,3,4)1234>>> print np.array(1.2,2,3,4).>>> print type(np.array(1.2,2,3,4)<type numpy.ndarray>以 list 或 tuple 变量为元素产生二维数组:复制代码 代码如下 :>>> print np.array(1,2,3,
3、4)1 23 4生成数组的时候,可以指定数据类型,例如32,16, and numpy.float64等:复制代码代码如下 :>>> print np.array(1.2,2,3,4), dtype=32)1234使用 numpy.arange方法复制代码代码如下 :>>> print np.arange(15)01234567891011121314>>> print type(np.arange(15)<type numpy.ndarray>>>> print
4、 np.arange(15).reshape(3,5) 01234 5678910 11 12 13 14>>> print type(np.arange(15).reshape(3,5)<type numpy.ndarray>使用 numpy.linspace方法例如,在从1 到 3 中产生 9 个数:复制代码代码如下 :>>> print np.linspace(1,3,9) 1. 1.25 1.5 1.75 2. 2.25 2.5 2.75 3. 使用 numpy.zeros , numpy.ones ,numpy.eye 等方法可以构造特
5、定的矩阵例如:复制代码代码如下 :>>> print np.zeros(3,4) . . .>>> print np.ones(3,4) . . .>>> print np.eye(3) 1.0.0. 0.1.0. 0.0.1.创建一个三维数组:复制代码代码如下 :>>> print np.zeros(2,2,2) 0.0. 0.0. 0.0. 0.0.获取数组的属性:复制代码代码如下 :>>> a = np.zeros(
6、2,2,2)>>> print a.ndim#数组的维数3>>> print a.shape#数组每一维的大小(2, 2, 2)>>> print a.size#数组的元素数8>>> print a.dtype#元素类型float64>>> print a.itemsize#每个元素所占的字节数8 数组索引,切片,赋值示例:复制代码代码如下 :>>> a = np.array( 2,3,4,5,6,7 )>>> print a2 3 45 6 7>>>
7、 print a1,27>>> print a1,:567>>> print a1,1:26>>> a1,: = 8,9,10>>> print a 23 4 89 10使用 for 操作元素复制代码代码如下 :>>> for x in np.linspace(1,3,3):.print x.1.02.03.0 基本的数组运算先构造数组a、 b:复制代码代码如下 :>>> a = np.ones(2,2)>>> b = np.eye(2)>>> pri
8、nt a 1.1. 1.1.>>> print b 1.0. 0.1.数组的加减乘除:复制代码代码如下 :>>> print a > 2False FalseFalse False>>> print a+b 2.1. 1.2.>>> print a-b 0.1. 1.0.>>> print b*2 2.0. 0.2.>>> print (a*2)*(b*2) 4.0. 0.4.>>> print b/(a*2) 0.50. 0.0.5>>> pr
9、int (a*2)*4 16.16. 16.16.使用数组对象自带的方法:复制代码代码如下 :>>> a.sum()4.0>>> a.sum(axis=0)#计算每一列(二维数组中类似于矩阵的列)的和array( 2.,2.)>>> a.min()1.0>>> a.max()1.0使用 numpy 下的方法:复制代码代码如下 :>>> np.sin(a)array( 0.84147098,0.84147098, 0.84147098,0.84147098)>>> np.max(a)1.0
10、>>> np.floor(a)array( 1.,1., 1.,1.)>>> np.exp(a)array( 2.71828183,2.71828183, 2.71828183,2.71828183)>>> np.dot(a,a)# 矩阵乘法array( 2.,2., 2.,2.) 合并数组使用 numpy 下的 vstack 和 hstack 函数:复制代码代码如下 :>>> a = np.ones(2,2)>>> b = np.eye(2)>>> print np.vstack(a,
11、b) 1.1. 1.1. 1.0. 0.1.>>> print np.hstack(a,b) . .看一下这两个函数有没有涉及到浅拷贝这种问题:复制代码代码如下 :>>> c = np.hstack(a,b)>>> print c . .>>> a1,1 = 5>>> b1,1 = 5>>> print c . .可以看到, a、 b 中元素的改变并未影响 c。深拷贝数组数组对象自带了浅拷贝和深拷贝的方法
12、,但是一般用深拷贝多一些:复制代码代码如下 :>>> a = np.ones(2,2)>>> b = a>>> b is aTrue>>> c = a.copy()#深拷贝>>> c is aFalse基本的矩阵运算转置:复制代码代码如下 :>>> a = np.array(1,0,2,3)>>> print a1 02 3>>> print a.transpose()1 20 3迹:复制代码代码如下 :>>> print np.trace(a)4numpy.linalg模块中有很多关于矩阵运算的方法:复制代码代码如下 :>>> import numpy.linalg as nplg特征值、特征向量:复制代码代码如下 :>>> print nplg.eig(a)(array( 3.,1.), array( 0.,0.70710678, 1., -0.70710678)3、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年低空经济生态补偿机制构建与飞行活动监管协同策略报告
- 低空经济2025行业趋势报告:无人机与传统交通融合的协同创新路径与展望
- 2025北京市育英学校科学城学校招聘考试模拟试题及答案解析
- 2025年低空经济无人机配送产业政策与市场潜力分析报告
- 2025年跨境贸易保证合同
- 2025年港口船舶垃圾回收处理合同协议
- 2025年风电项目环境影响后评价报告与绿色旅游发展报告
- 2025年低空无人机电力巡检技术升级与市场规模报告
- 2025年新能源汽车充电桩行业市场前景与市场机遇研究报告
- 2025版低空经济「航空服务」市场潜力报告
- DL-T5588-2021电力系统视频监控系统设计规程
- 医学伦理与医生护士职业道德的边界探讨
- 母婴护理中心(月子会所)项目实施方案
- 作业指导书管理规范规章制度
- 篮球空白战术板
- 医保工作各小组和医保相关制度
- 2023年江苏泰州现代农业发展集团有限公司招聘笔试题库含答案解析
- 第五章 亲核取代反应
- 医院医疗设备购置申请表(采购单)
- 2022年中交营口液化天然气有限公司招聘笔试题库及答案解析
- 《消防安全技术实务》课本完整版
评论
0/150
提交评论