《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 emergeNumPy(4) 要在Debian或Ubuntu上安装`NumPy`,请在命令行中执行如下命令: `sudo apt-get install python-`NumPy

在这里插入图片描述

1.4 动手实践:向量加法

假设我们需要对两个向量ab做加法。这里的向量即数学意义上的一维数组,随后我们将在第5章中学习如何用NumPy数组表示矩阵。向量a的取值为0~n的整数的平方,例如n3时,向量a014。向量b的取值为0~n的整数的立方,例如n3时,向量b018。用纯Python代码应该怎么写呢?我们先想一想这个问题,随后再与等价的NumPy代码进行比较。
(1) 纯Python代码:

def pythonsum(n):
    a = range(n)
    b = 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

(2) 使用NumPy的代码:

def `NumPy`sum(n):
    a = `NumPy`.arange(n) ** 2
    b = `NumPy`.arange(n) ** 3
    c = a + b
    return c

注意, NumPysum()函数中没有使用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(函数名)函数名?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值