基本信息
文件名称:Python数据分析基础教程(微课版)(第2版)课件 第4章NumPy 数组与矢量计算 .pptx
文件大小:817.7 KB
总页数:52 页
更新时间:2025-06-10
总字数:约1.4万字
文档摘要

;1;NumPy是一个开源的Python科学计算库,它是一个由多维数组和用于处理数组的例程集合组成的库。

1.NumPy的基本功能如下。

(1)提供了一个具有矢量算术运算和复杂广播功能的、快速且节省空间的多维数组对象ndarray。

(2)提供了用于对数组执行元素级计算以及直接对数组执行数学运算的函数。

(3)提供了用于读写硬盘上基于数组的数据集的工具,以及用于操作内存映射文件的工具。

(4)提供了线性代数运算、随机数生成以及傅里叶变换功能。

(5)提供了用于集成由C、C++、Fortran等语言编写的代码的工具。

(6)在数据分析方面,NumPy还可作为算法之间传递数据的容器。;2.在Python中使用NumPy的优势

(1)在进行数值计算时,使用NumPy能够直接对数组和矩阵进行操作,因此可以省略许多处理数值计算的循环语句。同时,由于NumPy拥有众多的数学函数,因此会让编写代码的工作轻松许多。此外,NumPy的底层算法在设计时就有着优异的性能,并且经受住了时间的考验。

(2)NumPy中数组的存储效率和输入输出性能均远远优于Python中等价的基本数据结构(如嵌套的列表),其能够提升的性能与数组中元素的数目成比例。对于大型数组的运算,使用NumPy有很大的优势。对于TB级的大文件,NumPy使用内存映射文件来处理,以达到最优的数据读写性能。不过,NumPy数组的通用性不及Python提供的列表,因此在科学计算之外的领域,NumPy的优势就不那么明显了。;2.在Python中使用NumPy的优势

(3)NumPy的大部分代码都是用C语言编写的,这使得NumPy代码比纯Python代码高效得多。NumPy同样支持C语言的API,并且允许在C语言源代码上做更多的功能拓展。

(4)NumPy通常与SciPy和Matplotlib一起使用,这种组合广泛用于替代MATLAB。

(5)NumPy是开源的库。;1.测试Python环境中是否安装了NumPy

在Windows操作系统下,按【Windows】+【R】键,打开“运行”对话框,在打开栏中输入python,按【Enter】键,进入Python交互式终端。在Python命令提示符后输入fromnumpyimport*命令,如果在交互式终端中出现ModuleNotFoundError:Nomodulenamed‘numpy???的错误提示,则需要安装NumPy。

在Windows操作系统下安装NumPy方法(自主学习)

PyCharm安装NumPy方法(自主学习)

NumPy的导入方法:impornumpyasnp或者fromnumpyimport*

;SciPy是世界著名的Python开源科学计算库,它是建立在NumPy基础之上,增加了众多的数学、科学以及工程计算中常用的库函数。它增加的功能包括插值、积分、最优化、统计、线性代数、傅里叶变换、图像处理和常微分方程求解器等一些专用函数。

与NumPy库相同,SciPy也是需要单独安装,安装步骤如下。

1.测试Python环境中是否安装了SciPy(自主学习)

2.在Windows操作系统下安装SciPy(自主学习)

3.PyCharm安装SciPy(自主学习)

4.SciPy的导入方法:importscipyassp或者fromscipyimport*

;在科学计算中,常常会遇到数组和矩阵的计算,如有两个一维数组x和y,其中,x的值为0-10的整数,y的值为0-10的整数的平方,需要计算x与y的一维数组相加。

1.利用Python的循环语句来实现两个一维数组相加示例代码example4-1

2.利用NumPy实现两个一维数组相加的示例代码example4-2

3.比较两种方法的计算速度测试示例代码;NumPy提供了两种基本对象:ndarray(N-dimensionalArrayObject)和ufunc(UniversalFunctionObject)。其中ndarray是一个多维数组对象,而ufunc则是能够对数组进行处理的函数。

NumPy数组一般是同质的(但特殊的数组类型可以是异质的),即数组中所有元素的数据类型必须一致。NumPy数组的下标也是从0开始的。数组元素的数据类型用数据类型对象表示,数据类型对象是dtype类的实例。;利用