本章节以及后续章节的源码,当然也可以从我的github下载,在源码中我自己加了一些中文注释。十分感谢SeanCheney大佬的翻译工作
NumPy是高性能科学计算和数据分析的基础包。它本身并没有提供多么高级的数据分析功能,理解NumPy数组以及面向数组的计算将有助于你更好地高效的的使用诸如pandas之类的工具。
NumPy的ndarray,一种多维数组对象,该对象是一个快速而灵活的大数据集容器。先了解一下怎么回事:
一、创建ndarray
下表列出了一些数组创建函数。由于NumPy关注的是数值计算,因此,如果没有特别指定,数据类型基本都是float64(浮点数)。
二、ndarray的数据类型
ndarray的数据类型如下表:
三、数组和标量之间的运算
四、基本的索引和切片
一维数组:
当你曾经用过其他热衷于复制数组数据的编程语言时,由于NumPy的设计目的是处理大数据,所以假如NumPy坚持要将数据复制来复制去的话会产生何等的性能和内存问题。如果你想要得到的是ndarray切片的一份副本而非视图,就需要显式地进行复制操作。例如:arr[5:8].copy()
高纬度数组:
切片索引:
五、布尔型索引
六、花式索引
七、数组转换和轴对换:
转置(transpose)是重塑的一种特殊形式,它返回的是源数据的视图(不会进行任何复制操作)。
数组不仅有transpose方法,还有一个特殊的T属性:
快速学习: