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以上,否则一些稍具规 ...
随机推荐
- python解释器介绍以及Pycharm的破解
python语言是弱类型解释型语言,弱类型指的是没有强制规定它的类型. 由于是解释型语言,则必有解释器与其匹配,根据不同的工作环境以及需求,python的解释器有很多种, 官方推荐的是CPython, ...
- Django. No changes detected when "makemigrations"
在修改了models.py后,有些用户会喜欢用python manage.py makemigrations生成对应的py代码. 但有时执行python manage.py makemigration ...
- SQLServer 常见SQL笔试题之语句操作题详解
SqlServer 常见SQL笔试题之语句操作题详解 by:授客 QQ:1033553122 测试数据库 CREATE DATABASE handWriting ON PRIMARY ( name = ...
- WOSA/XFS PTR Form解析库—测试工具预览
- Android应用程序启动过程(一)总结
一.App启动方式 1,冷启动 冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用. 冷启动的特点:因为系统会重新创建一个新的进程分配给它,所以会创建和初始化App ...
- vs2017安装cuda9.0编译默认示例失败解决方法
https://devtalk.nvidia.com/default/topic/1027209/cuda-setup-and-installation/cuda-9-0-does-not-work- ...
- .NET泛型中的协变与逆变
泛型的可变性:协变性和逆变性 实质上,可变性是以一种类型安全的方式,将一个对象作为另一个对象来使用. 我们已经习惯了普通继承中的可变性:例如,若某方法声明返回类型为Stream,在实现时可以返回一个M ...
- Prometheus Node_exporter 之 Network Netstat TCP
Network Netstat TCP /proc/net/snmp 1. TCP Segments type: GraphUnit: shortLabel: Segments out (-) / i ...
- 检索 COM 类工厂中 CLSID 为 {00021A20-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80080005
创建Excel对象失败: Excel.Application xApp = new Excel.Application(); 错误提示:{"检索 COM 类工厂中 CLSID 为 {0002 ...
- man -k : nothing appropriate.
➜ workplace man -k zip zip: nothing appropriate. 出现这种情况,是索引库没有建立. man 和 whatis 共用一个索引库的. 我们使用 man w ...