Python 数据分析(一):NumPy 基础知识
发布网友
发布时间:2024-10-01 22:18
我来回答
共1个回答
热心网友
时间:2024-10-18 04:49
1. 简介
NumPy(Numerical Python)是一个开源的 Python 科学计算扩展库,主要用来处理任意维度数组与矩阵,通常对于相同的计算任务,使用 NumPy 要比直接使用 Python 基本数据结构要简单、高效的多。安装使用pip install numpy 命令即可。
2. 使用
2.1 ndarray
ndarray 即 n 维数数组类型,它是一个相同数据类型的集合,以 0 下标为开始进行集合中元素的索引。
创建数组可以使用 NumPy 的 array 方法,具体格式如下:
array(p_object, dtype=None, copy=True, order='K', subok=False, ndmin=0)
当然,还可以使用 arange 方法,下面看一下具体使用示例。
看一下如何创建一维数组
看一下如何创建多维数组,以二维数组为例
通过示例来看一下 ndarray 对象的常用属性
改变数组的形状
2.2 数据类型
通过下表来看一下 NumPy 的常用数据类型。
通过示例来看一下如何修改数据类型。
2.3 索引与切片
NumPy 数组支持索引、切片操作,还可以进行迭代,先看一下一维数组。
再看一下多维数组的这些操作。
2.4 副本与视图
视图(浅复制)只是原有数据的一个引用,通过该引用可访问、操作原有数据,如果我们对视图进行修改,它会影响原始数据,因为浅复制共享内存。
副本(深复制)是对数据的完整拷贝,如果我们对副本进行修改,它不会影响到原始数据,因为深复制不共享内存。
调用 ndarray 的 view() 方法会产生一个视图,下面通过示例来看一下。
调用 ndarray 的 copy() 方法会产生一个副本,下面通过示例来看一下。
2.5 轴的概念
NumPy 中的轴简单来说就是方向的意思,使用数字 0、1、2 表示,一维数组只有 0 轴,二维数组有 0、1 轴,三维数组有 0、1、2 轴,了解轴的相应概念可以方便我们进行相应计算。
2.6 基本运算
看一下数组与数字之间的加、减、乘、除运算。
看一下数组与数组之间的运算。
常用数学运算
2.7 常用操作
NumPy 的 append() 方法可以在数组的末尾添加值,该操作会分配至整个数组,并把原数组复制到新数组,该操作需保证输入的维度匹配,下面看一下使用示例。
我们还可以使用 insert() 方法进行添加操作,该方法在给定索引前沿给定轴向数组中插入值,下面看一下使用示例。
NumPy 的 delete() 可以对数组进行删除操作,下面看一下使用示例。
NumPy 的 unique() 方法可以去除数组中的重复元素。