系列文章目录
Python数据科学家养成计划(NumPy学习指南)
一. Python
NumPy 是基于 Python 的,因此在安装 NumPy 之前,我们需要先安装 Python。
某些操作系统已经默认安装有 Python 环境,但你仍需检查 Python 的版本是否与你将要安装的 NumPy 版本兼容。
Python 有很多种实现,包括一些商业化的实现和发行版。
二. windows 平台安装 Python
以下为在 Window 平台上安装 Python 的简单步骤:
- 打开 WEB 浏览器访问https://www.python.org/downloads/windows/
- 在下载列表中选择Window平台安装包,包格式为:python-XYZ.msi 文件 , XYZ 为你要安装的版本号。
- 要使用安装程序 python-XYZ.msi, Windows 系统必须支持 Microsoft Installer 2.0 搭配使用。只要保存安装文件到本地计算机,然后运行它,看看你的机器支持 MSI。Windows XP 和更高版本已经有 MSI,很多老机器也可以安装 MSI。
- 下载后,双击下载包,进入 Python 安装向导,安装非常简单,你只需要使用默认的设置一直点击"下一步"直到安装完成即可。
三. windows 平台安装 NumPy、Matplotlib、Scipy
在安装好 Python 之后,我们直接使用 pip 源安装相关 Python 依赖库即可:
- pip install NumPy
- pip install matplotlib
- pip install scipy
四. 数组对象
在介绍完 NumPy 的安装步骤之后,我们来看看 NumPy 中的数组对象。
NumPy 数组在数值运算方面的效率优于 Python 提供的 list 容器。
使用 NumPy 可以在代码中省去很多循环语句,因此其代码比等价的 Python 代码更为简洁。
五. 向量加法
向量:数学意义上的一维数组。
题目:对两个向量 a 和 b 做加法。
- 向量 a 的取值:0 ~ n 的整数的平方,例如 n 取 3 时,向量 a 为 [0, 1, 4]
- 向量 b 的取值:0 ~ n 的整数的立方,例如 n 取 3 时,向量 a 为 [0, 1, 8]
(1) 使用纯 Python 代码解决问题
def python_sum(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
print(python_sum(3))
(2) 使用 NumPy 代码解决问题
import numpy as np
def numpy_sum(n):
a = np.arange(n) ** 2
b = np.arange(n) ** 3
c = a + b
return c
print(numpy_sum(3))
注意:
- 使用 NumPy 模块时需要先使用 import 引入该模块。
- numpy_sum() 函数中没有使用 for 循环。
- 使用 NumPy 中的 arange() 函数来创建包含 0 ~ n 的整数的 NumPy 数组。
- 代码中的 arange() 函数前面有一个 前缀 np,是在代码开头所引入的 NumPy 模块的别名,表明函数是从 NumPy 模块导入的。
(3) 比较使用纯 Python 代码实现和使用 NumPy 代码实现的耗时时间
- 程序在向量个数为 1000、5000 和 10000 时的运行时间分别为: