《Python数据分析基础教程:NumPy学习指南(第2版)》笔记1:第一章 NumPy快速入门
NumPy
快速入门
1.1 Python
NumPy
是基于Python的,因此在安装NumPy
之前,需要先安装Python。某些操作系统已经默认安装有Python环境,但仍需检查Python的版本是否与将要安装的NumPy
版本兼容。Python有很多种实现,包括一些商业化的实现和发行版。本书使用CPython实现,从而保证与NumPy
兼容。
1.2 动手实践:在不同的操作系统上安装 Python
(1) Debian和Ubuntu
Debian和Ubuntu可能已经默认安装了Python,但开发者包(developmentheaders)一般不会默认安装。在Debian和Ubuntu中安装python和python-dev的命令如下:
sudo apt-get install python
sudo apt-get install python-dev
(2) Windows
Python的Windows安装程序可以在www.python.org/download下载。在这个站点中,也可以找到Mac OS X的安装程序,以及Linux、 Unix和Mac OS X下的源代码包。
(3) Mac Mac
OS X中预装了Python,而我们也可以通过MacPorts、 Fink或者类似的包管理工具来获取Python。
LAPACK并不是必需的,但如果需要, NumPy
在安装过程中将检测并使用之。我们推荐大家
安装LAPACK以便应对海量数据的计算,因为它拥有高效的线性代数计算模块。
1.3 动手实践:在 Linux 上安装 NumPy
、 Matplotlib、 SciPy和 IPython
在Linux上安装NumPy
和相关软件的方法取决于具体使用的Linux发行版。大部分Linux发行版都有NumPy
的软件包。我一些流行的Linux发行版的安装方法如下:
(1) 要在Red Hat上安装NumPy
,请在命令行中执行如下命令:
yum install python-
NumPy(2) 要在Mandriva上安装`NumPy`,请在命令行中执行如下命令: `urpmi python-`NumPy
(3) 要在Gentoo上安装NumPy
,请在命令行中执行如下命令:
sudo emerge
NumPy(4) 要在Debian或Ubuntu上安装`NumPy`,请在命令行中执行如下命令: `sudo apt-get install python-`NumPy
1.4 动手实践:向量加法
假设我们需要对两个向量a
和b
做加法。这里的向量即数学意义上的一维数组,随后我们将在第5章中学习如何用NumPy
数组表示矩阵。向量a
的取值为0~n
的整数的平方,例如n
取3
时,向量a
为0
、 1
或4
。向量b
的取值为0~n
的整数的立方,例如n
取3
时,向量b
为0
、 1
或8
。用纯Python代码应该怎么写呢?我们先想一想这个问题,随后再与等价的NumPy
代码进行比较。
(1) 纯Python代码:
def pythonsum(n):a = range(n)b = range(n)c = []for i in range(len(a)):a[i] = i ** 2b[i] = i ** 3c.append(a[i] + b[i])return c
(2) 使用NumPy
的代码:
def `NumPy`sum(n):a = `NumPy`.arange(n) ** 2b = `NumPy`.arange(n) ** 3c = a + breturn c
注意, NumPy
sum()函数中没有使用for
循环。同时,我们使用NumPy
中的arange
函数来创建包含0~n 的整数的NumPy
数组。代码中的arange
函数前面有一个前缀NumPy
,表明该函数是从NumPy
模块导入的。
用NumPy
还是Python,得到的结果是一致的。不过,两者的输出结果在形式上有些差异。注意,NumPy
sum()
函数的输出不包含逗号。这是为什么呢?显然,我们使用的是NumPy
数组,而非Python自身的列表。
1.5 IPython:一个交互式 shell 工具
IPython提供的交互式实验环境被很多人认为是Matlab、 Mathematica和Maple的开源替代品。你可以在线获取包括安装指南在内的更多信息,地址为http://ipython.org/。
IPython是开源免费的软件,可以在Linux、 Unix、 Mac OS X以及Windows上使用。 IPython的作者们希望那些用到IPython的科研工作成果在发表时能够提到IPython,这是他们对IPython使用者唯一的要求。下面是IPython的基本功能:
- Tab键自动补全;
- 历史记录存档;
- 行内编辑;
- 使用%run可以调用外部Python脚本;
- 支持系统命令;
- Python代码调试和性能分析。
使用quit()函数或快捷键Ctrl+D均可以退出IPython shell。
在IPython中获取NumPy
函数帮助有两种方式,help(函数名)
或函数名?
。
《Python数据分析基础教程:NumPy学习指南(第2版)》笔记1:第一章 NumPy快速入门相关推荐
- python数据分析基础教程 numpy_Python数据分析基础教程:NumPy学习指南(第2版)
Python数据分析基础教程:NumPy学习指南(第2版) Ivan Idris (作者) 张驭宇 (译者) NumPy是一个优秀的科学计算库,提供了很多实用的数学函数.强大的多维数组对象和优异的计算 ...
- python统计数据分析基础教程_Python数据分析基础教程:NumPy学习指南(第2版)
第1章 NumPy快速入门 让我们开始吧.首先,我们将介绍如何在不同的操作系统中安装NumPy和相关软件,并给出使用NumPy的简单示例代码.然后,我们将简单介绍IPython(一种交互式shell工 ...
- 《Python数据分析基础教程:NumPy学习指南(第2版)》笔记4:第二章 NumPy基础3——数组的组合、分割,数组转换为列表
第二章 NumPy基础3 本章示例代码中的输入和输出均来自IPython会话. 2.7 数组的组合 NumPy数组有水平组合.垂直组合和深度组合等多种组合方式,我们将使用vstack.dstack. ...
- 《Python数据分析基础教程:NumPy学习指南:第二版》读书笔记
内容 主要介绍了NumPy库中的函数. 组成方式 用非常零散的知识点串联成章节. 内容摘要 极简地展示了章节中所运用的函数. 第一章 arrange函数创建NumPy数组. 第二章 NumPy特性 在 ...
- 《Python数据分析基础教程:NumPy学习指南(第2版)》笔记6:第三章 常用函数2——中位数、方差、日期、展平
本章将介绍NumPy的常用函数.具体来说,我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数.这里还将学习读写文件的方法,并尝试函数式编程和NumPy线 ...
- 《Python数据分析基础教程:NumPy学习指南(第2版)》笔记5:第三章 常用函数1——文件读写、算术平均值、最大值最小值、极值
本章将介绍NumPy的常用函数.具体来说,我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数.这里还将学习读写文件的方法,并尝试函数式编程和NumPy线 ...
- 《Python数据分析基础教程:NumPy学习指南(第2版)》笔记8:第三章 常用函数4——线性模型、数组修剪与压缩、阶乘
本章将介绍NumPy的常用函数.具体来说,我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数.这里还将学习读写文件的方法,并尝试函数式编程和NumPy线 ...
- 《Python数据分析基础教程:NumPy学习指南(第2版)》笔记16:第七章 专用函数2——金融函数
当前Numpy版本为:1.20 第七章 专用函数 7.9 金融函数 NumPy中有很多金融函数. Numpy 1.20之前的版本导入numpy,直接调用以下函数即可. (注意!Numpy 1.20之后 ...
- python数据分析基础教程 numpy 2pdf_Python数据分析基础教程:NumPy学习指南(第2版)...
领取成功 您已领取成功! 您可以进入Android/iOS/Kindle平台的多看阅读客户端,刷新个人中心的已购列表,即可下载图书,享受精品阅读时光啦! - | 回复不要太快哦~ 回复内容不能为空哦 ...
最新文章
- angular2 表单
- OSPF特殊区域之STUB
- 安装好的苹果系统部分截图
- python3 列表的增删改查
- iis7设置html支持asp,Win7下启用IIS7配置ASP运行环境的详细方法
- c# ui 滚动 分页_UI备忘单:分页,无限滚动和“加载更多”按钮
- 生成step文件_利用opencv给彦女王生成一副蒙太奇画像
- linux如何挂载nfs目录,linux – NFS导出已经挂载NFS的目录(在服务器上)
- labelme新版本的使用须知
- pip更新升级后Import Error:cannot import name main及pip安装包后出现环境错误拒绝访问...
- 8086cpu学习笔记(3):寻址方式
- 链上合约(On-chain) 和 链下合约(Off-chain) 是什么 区别
- 台达服务器AB和B2系列区别,台达伺服各系列区别
- ubuntu中 tftp 服务器搭建 tftpd-hpa
- python如何调整word表格宽度_python-docx编辑word表格
- Cocos2d-x 3.4 初体验——安装教程
- Comparable Comparator
- 解决 cannot connect to 192.168.1.136:5555: 由于目标计算机积极拒绝,无法连接。 (10061)
- 阿里自然语言处理部总监分享:NLP技术的应用及思考
- 模拟卷Leetcode【普通】537. 复数乘法