内容简介:最近的爬虫学习告一段落,后续补上爬虫的笔记。现在到数据分析部分,先从NumPy开始(环境python-3.6.5) 2019/1/23NumPy是高性能科学计算和数据分析的基础包。包括以下几个功能:用python原生代码对两个向量相加
最近的爬虫学习告一段落,后续补上爬虫的笔记。现在到数据分析部分,先从NumPy开始(环境python-3.6.5) 2019/1/23
NumPy基础
NumPy是高性能科学计算和数据分析的基础包。包括以下几个功能:
- ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组;
- 用于对整组数据进行快速运算的标准数学函数(无需编写循环);
- 用于读写磁盘的 工具 以及用于操作内存映射文件的工具;
- 线性代数,随机数生成以及傅里叶变换功能;
- 用于集成由C,C++,Fortran等语言编写的代码的工具。
例子引入
用 python 原生代码对两个向量相加
def pythonsum(n): a = list(range(n)) b = list(range(n)) c = [] for i in range(len(a)): a[i] = i ** 2 b[i] = i ** 3 c.append(a[i] + b[i]) return c arr = pythonsum(2) print(arr)
利用NumPy对向量相加。
import numpy as np def numpysum(n): a = np.arange(n) ** 2 b = np.arange(n) ** 3 c = a + b return c arr = numpysum(2) print(arr)
两种方法都可以对向量进行相加,相比而言利用NumPy库的代码会更简洁一点。可以对两种方法计算出执行时间,结果也是NumPy的效率高些。
ndarray,多维数组对象
NumPy中的ndarray是一个多维数组对象,这个对象是一个快速而且灵活的大数据集容器,该对象由两个部分组成:
- 实际的数据
- 描述这些数据的元数据
ndarray
是一个通用的同构数据多维容器,指的是其中的 元素
必须是 相同
的数据类型,每一个数组都有一个 shape
(表示各维度大小的元组)和一个 dtype
(用于说明数据类型的对象)。
In [12]: import numpy as np In [13]: a = np.arange(5) In [14]: a.dtype Out[14]: dtype('int32') In [15]: a.shape Out[15]: (5,) In [16]: a Out[16]: array([0, 1, 2, 3, 4])
NumPy中创建数组的函数
函数 | 说明 | |
---|---|---|
array | 将输入数据(元组,列表或其他序列类型)转换为ndarray。要么推断出dtype,要么显示指定dtype。默认直接复制输入数据 | |
asarray | 将输入转换为ndarray,如果输入就是一个ndarray就不进行复制 | |
arange | 类似内置的range,但返回的是一个ndarray而不是一个列表 | |
ones,ones_like | 根据指定的形状和dtype创建一个全是1的数组。ones_like以另一个数组为参数,并根据其形状和dtype创建一个全为1的数组 | |
zeros,zeros_like | 类似于ones,ones_like,只不过创建的是全为0的数组 |
以上所述就是小编给大家介绍的《NumPy基础》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。