Python2.7-NumPy
提供了两种基本对象ndarray(N-dimensional array object)和 ufunc(universal function object)
ndarray(下文统一称之为数组)是存储单一数据类型的多维数组,而ufunc则是能够对数组进行处理的函数
数组的创建是通过给np.array()函数传递python的序列对象完成的,可以通过设置关键字参数dtype设置元素类型
array实例对象常用属性:
a.dtype:获得元素类型
a.shape:获得数组维度,也可直接修改数组shape属性来改变数组的维度,只会改变每个轴的大小,数组元素在内存中的位置并没有改变
array实例对象常用方法:
reshape():创建一个改变了尺寸的新数组,原数组的shape保持不变,但共享内存,修改其中任意一个数组的元素都会同时修改另外一个数组的内容
arrange():类似于python的range函数,通过指定开始值、终值和步长来创建一维数组,注意数组不包括终值
linspace():指定开始值、终值和元素个数来等差创建一维数组,可以通过endpoint关键字指定是否包括终值,缺省设置是包括终值
logspace():和linspace类似,不过它创建等比数列
frombuffer, fromstring, fromfile等函数可以从字节序列创建数组,设置dtype控制元素类型
fromfunction(func, shape):通过制定函数func创建新数组,第一个参数为计算每个数组元素的函数,第二个参数为输出数组的大小
numpy.dtype({'names':[],'formats':[]}):定义一个结构数组,names定义每个字段名,formats定义对应字段类型
numpy.ogrid[:,:]:它像一个多维数组一样,用切片组元作为下标进行存取,返回的是一组可以用来广播计算的数组(坐标点)。其切片下标有两种形式:
开始值:结束值:步长,和np.arange(开始值, 结束值, 步长)类似
开始值:结束值:长度j,当第三个参数为虚数时,它表示返回的数组的长度,和np.linspace(开始值, 结束值, 长度)类似
ufunc是universal function的缩写,它是一种能对数组的每个元素进行操作的函数,计算整个数组时速度比math里的函数要快,而单个数时则是math快,如numpy.sin()
frompyfunc(func, nin, nout):func是计算单个元素的函数,nin是此函数的输入参数的个数,nout是此函数的返回值的个数
numpy.matrix():创建矩阵对象,有dot(计算的是这两个数组对应下标元素的乘积和(数学上称之为内积)、inner、outer
numpy.tofile(file),numpy.fromfile(file,[dtype]):tofile可以方便地将数组中数据以二进制的格式写进文件,但没有格式,因此用numpy.fromfile读回来的时候需要自己格式化数据
numpy.save(file,array),numpy.load(file):以NumPy专用的二进制类型保存数据,这两个函数会自动处理元素类型和shape等信息,后缀为npy,较难和其它语言编写的程序读入
numpy.savez(file, arr_0,[arr_1,...]):第一个参数是文件名,其后的参数都是需要保存的数组,也可以使用关键字参数为数组起一个名字,非关键字参数传递的数组会自动起名为arr_0, arr_1,输出的是一个压缩文件(扩展名为npz),其中每个文件都是一个save函数保存的npy文件,文件名对应于数组名。load函数自动识别npz文件,并且返回一个类似于字典的对象,可以通过数组名作为关键字获取数组的内容
numpy.savetxt(file,[fmt,delimiter]),numpy.loadtxt(file,[delimiter]):缺省按照'%.18e'格式保存数据,以空格分隔,保存时可以指定fmt和delimiter参数,分别控制保存元素的类型和分隔符,读入的时候也要指定delimiter参数
除了直接指定文件file,也可以传入已经打开的文件对象
Python2.7-NumPy的更多相关文章
- 其它课程中的python---2、NumPy模块
其它课程中的python---2.NumPy模块 一.总结 一句话总结: numpy在数组计算方面又快又方便 1.NumPy中的ndarray是一个多维数组对象,该对象由哪两部分组成? -实际的数据 ...
- Python核心团队计划2020年停止支持Python2,NumPy宣布停止支持计划表
Python核心团队计划在2020年停止支持Python 2.NumPy项目自2010年以来一直支持Python 2和Python 3,并且发现支持Python 2对我们有限的资源增加了负担:因此,我 ...
- 操作 numpy 数组的常用函数
操作 numpy 数组的常用函数 where 使用 where 函数能将索引掩码转换成索引位置: indices = where(mask) indices => (array([11, 12, ...
- python2 和 python3共存,并且分开使用
目录 一.本文使用的python版本安装 二.安装python2 和 Python3 三.修改名称,配置环境,实现共存 1.将C:\Python36中的python.exe修改为python3.exe ...
- faster-rcnn(testing): ubuntu14.04+caffe+cuda7.5+cudnn5.1.3+opencv3.0+matlabR2014a环境搭建记录
python版本的faster-rcnn见我的另一篇博客: py-faster-rcnn(running the demo): ubuntu14.04+caffe+cuda7.5+cudnn5.1.3 ...
- Ubuntu 14.04上安装caffe
本来实在windows 10上尝试安装caffe,装了一天没装上,放弃; 改在windows上装ubuntu的双系统,装了一个下午,不小心windows的系统盘被锁死了,也不会unlock?只好含泪卸 ...
- Ubuntu14.04配置cuda-convnet
转载请注明:http://blog.csdn.net/stdcoutzyx/article/details/39722999 在上一个链接中,我配置了cuda,有强大的GPU,自然不能暴殄天物,让资源 ...
- 深度学习caffe:Ubuntu16.04安装指南(1)
caffe [CPU ONLY] 2017-01-15 最简单的安装配置方式: 不用GPU加速,使用OPENCV2.4图像库, 这是根据官方教程(链接如下)简化而得到. Ubuntu 16.04 or ...
- Python package install血泪史
[前言][絮絮叨叨篇]:说实话,不是第一次安装Python库了,但是貌似没有特别顺利的时候,可能还是遇到的困难不够多咯.配置环境真是个糟心的事儿,不过作为菜鸟,还是得磨练磨练,毕竟某人云:" ...
- Desktop Ubuntu 14.04LTS/16.04科学计算环境配置
Desktop Ubuntu 14.04LTS/16.04科学计算环境配置 计算机硬件配置 cpu i5 6代 内存容量 8G gpu GTX960 显存容量 2G(建议显存在4G以上,否则一些稍具规 ...
随机推荐
- ubuntu16.04安装ssh服务,并实现远程访问
一.查看是否安装了ssh服务 apt-cache policy openssh-client openssh-server ubuntu默认安装了openssh-client,openssh-serv ...
- Software-Defined Networking之搬砖的故事
在很久很久以前,有一个村子. 村里的每一户,都有一个男人和一个女人. 每一户,都以搬砖为生. 从不同的地方,搬到不同的地方. 男人负责搬砖,女人负责告诉男人往哪搬. 每个家庭,都服从村委会的指挥. 村 ...
- layui数据表格的td模板
1.常用操作模板 <script type="text/html" id="userbar"> <a class="layui-bt ...
- agc007D - Shik and Game(dp 单调性)
题意 题目链接 Sol 主人公的最优决策一定是经过熊->返回到某个位置->收集经过的钻石 那么可以直接设\(f[i]\)表示收集完了前\(i\)个位置的钻石的最小时间,转移的时候枚举下最后 ...
- js-ES6学习笔记-module(4)
1.<script>标签打开defer或async属性,脚本就会异步加载.渲染引擎遇到这一行命令,就会开始下载外部脚本,但不会等它下载和执行,而是直接执行后面的命令. defer与asyn ...
- Hibernate 中配置属性详解(hibernate.properties)
Hibernate能在各种不同环境下工作而设计的, 因此存在着大量的配置参数.多数配置参数都 有比较直观的默认值, 并有随 Hibernate一同分发的配置样例hibernate.properties ...
- Atitit.播放系统规划新版本 and 最近版本回顾 v3 pbf.doc 1 版本11 (ing)41.1 规划h5本地缓存系列 41.2 Android版本app41.3 双类别系统,
Atitit.播放系统规划新版本 and 最近版本回顾 v3 pbf.doc 1 版本11 (ing)4 1.1 规划h5本地缓存系列 4 1.2 Android版本app4 1.3 双类别系统, ...
- 大数据【六】ZooKeeper部署
这是一个分布式服务框架,阿帕奇的一个子项目.关于ZooKeeper我只简单的部署一下,以便后面的HBase. 一 概述 ZooKeeper 分布式服务框架是 Apache Hadoop 的一个子项目 ...
- GridLayout和GridView的区别
GridView是一种适配器布局,它的继承关系是ViewGroup-->AdapterView-->AbsListView-->GridView,他是从一个adapter中取出内容填 ...
- Android--字符串和16进制相互转化(解决中文乱码)
import java.io.ByteArrayOutputStream; /** * Created by Administrator on 2016/2/2. * -----------16进制和 ...