导读:Python中常会用到一些专门的库,如NumPy、SciPy、Pandas和Matplotlib。数据处理常用到NumPy、SciPy和Pandas,数据分析常用到Pandas和Scikit-Learn,数据可视化常用到Matplotlib,而对大规模数据进行分布式挖掘时则可以使用Pyspark来调用Spark集群的资源。
从一定程度上来说,学习Python数据分析主要就是学习使用这些分析库。
作者:刘鹏 高中强 王一凡 等
来源:大数据DT(ID:hzdashuju)
01 NumPy
关于NumPy,本节主要介绍ndarray多维数组对象和数组属性。
1. ndarray 多维数组对象
NumPy库中的ndarray是一个多维数组对象,由两部分组成:实际的数据值和描述这些值的元数据。大部分的数组操作仅仅涉及修改元数据的部分,并不改变底层的实际数据。
数组中的所有元素类型必须是一致的,所以如果知道其中一个元素的类型,就很容易确定该数组需要的存储空间。可以用array()函数创建数组,并通过dtype获取其数据类型。
import numpy as np
a = np.array(6)
a.dtype
output: dtype('int64')
上例中,数组a的数据类型为int64,如果使用的是32位Python,则得到的数据类型可能是int32。
2. 数组属性
NumPy数组有一个重要的属性——维度(dimension),它的维度被称作秩(rank)。以二维数组为例,一个二维数组相当于两个一维数组。只看最外面一层,它相当于一个一维数组,该一维数组中的每个元素也是一维数组。那么,这个一维数组即二维数组的轴。
了解了以上概念,接着来看NumPy数组中比较重要的ndarray对象的属性:
ndarray.ndim:秩,即轴的数量或维度的数量
ndarray.shape:数组的维度,如果存的是矩阵,如n×m矩阵则输出为n行m列
ndarray.size:数组元素的总个数,相当于.shape中n×m的值
ndarray.dtype:ndarray对象的元素类型
ndarray.itemsize:ndarray对象中每个元素的大小,以字节为单位