主要基于《利用python进行数据分析:第4章》以及Numpy官网的tutorial。
Numpy是numerical python的简称,是高性能科学计算和数据分析的基础包。
Numpy最主要的对象是homogeneous multidimensional array(齐次多维数组),是同样类型的elements组成的table。In NumPy dimensions are called axes(轴)。
Numpy的数组对象叫ndarray
,是一个快速而灵活的大数据集容器。它是一个通用的同构数据多维容器,其中所有元素必须是相同类型的。numpy.array 和python标准库当中的array.array是不同的,后者只有一个维度。
可以利用这种数组对整块数据执行一些数学运算,语法跟标亮元素之间的运算一样。
每个数组都有一个ndarray.shape
(一个表示各维度大小的元组tuple)和一个ndarray.dtype
(一个说明数组数据类型的对象)。ndarray.ndim
表示维度的大小,ndarray.size
表示数组当中elements的总数,ndarray.itemsize
指每个element的bytes大小,ndarray.data
表示含有实际elements的缓冲区。
>>>data.dtype
dtype('int64')
创建ndarray
创建数组最简单的方法是array函数。它接受一切序列型的对象(可以是python的tuple或者list),然后产生一个新的NumPy数组。
除非显式说明,np.array会尝试为新建的这个数组推断出一个较为合适的数据类型(保存在dtype对象中)。
嵌套数据将会被转化为多维数组。
zeros
,ones
可以创建指定长度或形状的全0或全1数组。
>>>np.zeros((3,6))
用这些方法创建多维数组,需要传入一个表示形状的元组。
arange
是python内置函数range的数组版。
>>>np.arange(15)
array([ 0, 1, 2