图解 NumPy 学习笔记(一):初识 NumPy
import numpy as np # 导入 NumPy, 开始学习
感谢 NumPy, 本系列将使用图解以及脑图的方法来记录我的《图解 NumPy 学习笔记》。
NumPy 是 Numerical Python 的简称,它是目前 Python 数值计算 中最为重要的基础包。大多数计算包都提供了基于 NumPy 的科学计算函数功能,将 NumPy 的数组对象作为数据交换的通用语。——《利用 Python 进行数据分析》
初识 NumPy
NumPy 的非常详实,但由于数量过多,不容易让初学者有一个好的 big-picture。
本系列计划将 NumPy 较为全面的展示给初学者,加以鄙人的学习使用技巧与感悟,文章必有疏漏或错误,还望各位不吝赐教。
Why: 为什么要使用 NumPy ?
,NumPy 既结合了 Python 开发效率高的优点,又能弥补了 Python 运行效率较低的缺点。
在学会使用 numba.njit+NumPy (数十倍的速度)和 cuda GPU (上百倍的速度)加速后,真的是“人生苦短,我用 Python "了。当然这都是后话了,相关内容,以后补充。
NumPy 的方法比 Python 方法要 ,并且使用 内存也更少,可以大大方便我们在数据处理方面的研究与开发。
为什么要使用 NumPy ? 快与慢,还要看个人如何使用,但是 内存映射 这是非常棒的。 如果面临数据过多,又不想存入数据库中,且数据的形式是数组或者矩阵, 可以使用 NumPy 的 np.save() 和 np.load(, mmap_mode = r),可以内存映射矩阵保留在磁盘上,无须全部读入,以后会详细说明。 单从 运行效率 而言,在 上只要能被表示为针对 数组或矩阵运算 的算法,其运行效率几乎都可以与编译过的等效 C 语言代码媲美。
What: NumPy 是什么?
NumPy 是 Python 数值计算 的基石。
它提供多种数据结构、算法以及大部分涉及 Python 数值计算所需的接口 。
NumPy 是什么? 简单来说,NumPy 是使用 Python 进行数据分析的一个核心工具。
How: 如何使用 NumPy ?
使用NumPy的不二法门就是 面向数组编程。(面向数组编程,,看完拍案叫绝!!!)
面向过程编程 好理解, 面向对象编程 也好理解, 那 面向数组编程 ? 面向数组编程 就是以 向量化 代替 使用繁杂的 循环, 用人话说就是用 数组或矩阵运算 代替 遍历的 for 循环, 具体怎么做呢? 看见一个 for 循环, 就想一个问题 “ 我能否使用矩阵运算来代替这个 for 循环?”
人生苦短,我用 Python
人生苦短,我用 NumPy
Last updated: 2019/9/20
