上QQ阅读APP看书,第一时间看更新
3.1 数据基础运算工具:NumPy
NumPy是Python中用于科学计算的基础软件包,包含多维数组对象、多种派生对象(如矩阵)以及用于快速操作数组的函数的API。除此之外,它还提供线性代数运算、随机数生成以及傅里叶变换等功能。NumPy的核心是ndarray对象,它封装了Python原生的同数据类型的N维数组,为了保证其优良性能,其中许多操作都是在本地编译后执行的。
NumPy数组和标准Python Array(数组)之间有几个重要的区别。
·NumPy数组在创建时具有固定的大小,与Python的原生数组对象(可以动态增长)不同,更改ndarray的大小将创建一个新数组并删除原来的数组。
·NumPy数组中的元素都需要具有相同的数据类型,因此各元素在内存中的大小相同。但需要注意的是,当Python原生数组里包含了NumPy对象时,可以存在元素大小不同的数组。
·NumPy数组有助于对大量数据进行高级数学和其他类型的操作。一般来说,这些操作的执行效率更高,比使用Python原生数组所需的代码更少。
目前,越来越多基于Python的科学软件包使用了NumPy数组,虽然这些工具通常都支持将Python的原生数组作为参数,但它们在处理之前还是会将输入的数组转换为NumPy数组,而且输出通常也是NumPy数组。换句话说,为了更高效地使用基于Python的科学计算工具,只知道如何使用Python的原生数组类型是不够的,还需要知道如何使用NumPy数组。
在广告数据分析挖掘中,使用NumPy工具包进行数据运算的场景非常多。下面我们先简单认识一下Python中常见的数据结构。