1、numpy简介
简介
Numpy(Numerical Python)是Python语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库
Numpy的前身Numeric最早是有Jim Hugunin与其他协作者共同开发,2005年,Travis Oliphant在Numeric中结合了另一个同性质的程序库Numarray的特色,并加入了其他扩展而开发了Numpy。Numpy为开放源代码并且由许多协作者共同维护开发
作用
Numpy是一个运行速度非常快的数据库,主要用于数组计算。
包含
-
一个强大的N维数组对象ndarray
-
广播功能函数
-
整合C/C++/Fortran代码的工具
-
线性代数、傅里叶变换、随机数生成等功能
优势
-
对于同样的数值计算任务,使用numpy要比直接编写python代码便捷的多。
-
numpy中的数组的存储效果和输入输出性能均远远优于python中等价的基本数据结构,且其能够提升性能是对数组中的元素成比例的。
-
numpy的大部分代码都是C语言编写的,其底层算法在设计时就有着优异的性能,这使得numpy比纯python代码高效的多
应用
Numpy通常与SciPy(Scientific Python)和Matplotlib(绘图库)一起使用,这种组合广泛用于替代Matlab,是一个强大的科学计算环境,有助于我们通过Python学习数据科学或者机器学习
Scipy
是一个开源的Python算法库和数据工具包
包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算
Matplotlib
是Python编程语言及其数值数学扩展包Numpy的可视化操作界面。它为利用通用的图形用户界面工具吧,如Tkinter,wxPython,Qt或GTK+向用用程序嵌入式绘图提供了应用程序接口(API)
安装
可以使用pip install numpy 或conda install numpy安装
2、Ndarray对象简介
介绍
-
Numpy最重要的一个特点是其N维数组对象ndarray,它使一系列同类型数据的集合,以0下标为开始进行集合中元素的索引
-
ndarray对象是用于存放同类型元素的多维数组
-
ndarray中的每个元素在内存中都有相同存储大小的区域
组成
-
一个指向数据(内存或内存映射文件中的一块数据)的指针。
-
数据类型或dtype,描述在数组中的固定大小值的格子。
-
一个表示数组形状(shape)的元组,表示各维度大小的元组
-
一个跨度元祖(stride),其中的整数指的是为了前进到当前维度下一个元素需要“跨过”的字节数。
------ 以上内容均为学习笔记仅供参考,如有不准确或错误内容,望您批评指教。