《Python数据分析》一第1章 Python程序库入门1.1 本书用到的软件

第1章 Python程序库入门

Python数据分析
首先浏览一下http://www.xmind.net/m/WvfC/页面,从这里可以找到一幅描绘数据分析软件的脑图。很明显,我们不会在本章中安装本书所需的所有软件,而是介绍如何在不同的操作系统上面安装NumPy、SciPy、matplotlib和IPython,同时考察一些使用NumPy库的简单代码。

NumPy是一个基础性的Python库,为我们提供了常用的数值数组和函数。

SciPy是Python的科学计算库,对NumPy的功能进行了扩充,同时也有部分功能是重合的。Numpy和Scipy曾经共享基础代码,后来分道扬镳了。

matplotlib是一个基于NumPy的绘图库。第6章“数据可视化”会对matplotlib库进行详细介绍。

IPython为交互式计算提供了一个基础设施,这个项目最著名的部分就是它的交互式解释器IPython shell。我们将在本章后面介绍IPython shell。对于本书而言,当需要安装软件时,我们会在恰当的时刻给出相应的安装说明。当在安装软件的过程中遇到困难,或者不能断定最佳方案时,可以参考本章最后的部分,它提供了寻找解决问题所需辅助信息的指南。

本章将涉及以下主题。

  • 在Windows、Linux和Macintosh系统上面安装Python、SciPy、matplotlib、IPython和NumPy。
  • 利用NumPy数组编写简单的应用程序。
  • 了解IPython。
  • 在线资源和帮助。

1.1 本书用到的软件

本书所用软件都是基于Python语言的,所以必须首先安装Python。不过,对于某些操作系统而言,Python是默认安装的。但是,我们需要检查Python版本与想要安装的软件版本是否兼容。Python具有多种实现,其中包括具有商业版权的实现和发行版。在本书中,我们只关注标准CPython实现,因为它与NumPy完全兼容。

提示:
 可以从 https://www.python.org/download/页面下载Python。在这个网站上,我们可以找到为Windows和Mac OS X系统开发的安装程序,以及为Linux、UNIX和Mac OS X系统提供的源码包。
本章需要安装的软件,在Windows、各种Linux发行版本和Mac OS X系统上都有相应的二进制安装程序。当然,如果愿意,也可以使用相应的源代码发行包。对于Python,要求其版本为2.4.x或更高,目前最佳版本为2.7.x,因为大部分的Python科学计算库都支持这个版本。对于Python 2.7版本的支持与维护工作,将延续至2020年,之后,我们不得不迁移到Python 3。

1.1.1 软件的安装和设置

下面学习在Windows、Linux和Mac OS X系统上安装和设置NumPy、SciPy、matplotlib和IPython的详细过程。针对不同的平台,我们会分别加以介绍。

1.1.2 Windows平台

对于Windows系统来说,安装过程非常简单,下载一个安装程序,然后根据向导提示即可完成安装工作。下面给出NumPy的安装步骤,对于其他软件库来说,过程类似。具体过程如下所示:

(1)从SourceForge网站(见表1-1)下载用于Windows系统的安装程序。最新的发行版本会随时间而变化,不过没关系,我们只要选择最适合自己的那个版本就可以。

(2)选择适当的版本。这里选择numpy-1.8.1-win32-superpack-python 2.7.exe。

(3)双击打开这个EXE格式的安装程序。

(4)这时会看到NumPy及其功能的描述信息,继续单击Next按钮。

如果已经安装了Python,会自动检测出来,如果没有检测到,很可能是路径设置有问题。

提示:
 本章结尾部分给出了帮助解决NumPy安装问题的相关资料。
(5)如果Python已找到,就单击Next按钮;否则,单击Cancel按钮,然后安装Python(没有Python时是无法安装NumPy的)。注意,单击Next按钮后就无法返回了,所以在此之前最好确认一些事情,如确认当前的安装目录是不是你想要的那个,其他诸如此类。现在,安装正式开始,这可能需要一段时间。

提示:
 安装程序的发展非常迅猛,其他的备选品种请参见http://www.scipy.org/install.html。对于安装程序来说,它要求C:Windows目录下存在一个msvcp71.dll文件,你可以根据情况从http://www.dll-files.com/dllindex/dll-
files.shtml?msvcp71页面下载。

1.1.3 Linux平台

在Linux系统上安装本书推荐的软件时,与操作系统本身的发行版本密切相关。如可以从命令行安装NumPy,也可以用图形界面的安装程序来安装,这取决于系统的发行版。安装matplotlib、SciPy和IPython时,用的命令是完全相同的,只不过程序包的名称要有所变化而已。我们建议安装matplotlib、SciPy和IPython,但这不是必需的。

大部分Linux发行版都带有NumPy程序包,可以根据自己的发行版使用相应的命令查看,具体如下所示:

  • 对于Red Hat操作系统,可以使用下列命令安装NumPy:
      $ yum install python-numpy
  • 对于Mandriva操作系统,可以使用下列命令安装NumPy:
      $ urpmi python-numpy
  • 对于Gentoo操作系统,可以使用下列命令安装NumPy:
      $ sudo emerge numpy
  • 对于Debian或者Ubuntu操作系统,可以使用下列命令安装NumPy:
      $ sudo apt-get install python-numpy

表1-2总结了各种Linux发行版下NumPy、SciPy、matplotlib和IPython程序包的名称。

1.1.4 Mac OS X平台

Mac OS X平台既可以使用具有图形界面的安装程序,也可以通过软件包管理系统(port manager)以命令行方式来安装NumPy、matplotlib和SciPy,这取决于个人喜好。这里有一个先决条件,就是要确保已经安装了XCode,因为它不属于OS X系统的组成部分。我们可以用带有图形用户界面的安装程序来安装NumPy,具体过程如下所示。

(1)首先从http://sourceforge.net/projects/numpy/files/页面下载NumPy的安装程序。实际上,matplotlib和SciPy的安装程序也能从这里下载。

(2)只要把前面URL中的numpy替换为scipy或者matplotlib,就是相应软件包安装程序的下载地址。截至编写本书期间为止,IPython还没有提供图形用户界面的安装程序。

(3)下载相应的DMG文件,通常选择最新的文件。此外,也可以选用SciPy Superpack,下载地址是https://github.com/fonnesbeck/ScipySuperpack

选择哪一种安装方式并不重要,最重要的是要确保一件事情,即Python库的更新操作不会给之前已安装的那些用到非Apple公司所提供的Python库的软件带来负面影响。关于NumPy、matplotlib和SciPy的部分,具体过程如下所示。

(1)打开DMG文件,本例中为numpy-1.8.1-py2.7-python.org-macosx 10.6.dmg文件。

(2)双击呈打开状的盒子的图标,注意是文件后缀为.mpkg的那个,这时会出现该安装程序的欢迎界面。

(3)单击Continue按钮,来到Read Me界面,这里会看到NumPy的简单说明。

(4)单击Continue按钮,进入License界面。

(5)阅读版权声明,单击Continue按钮,然后在提示接受该声明时,单击Accept按钮。此后,一路按回车键,直到单击Finish按钮便万事大吉了。

此外,也可以使用MacPorts、Fink或者Homebrew来安装这些程序库。下面给出安装这些程序包所需的命令。

对于本书来说,只有NumPy是必需的;对于其他程序库,只要是你不感兴趣的,完全可以忽略。

  • 用MacPorts进行安装时,可以使用下列命令:
$ sudo port install py-numpy py-scipy py-matplotlib py-ipython
  • Fink也为NumPy提供了许多程序包,如scipy-core-py24、scipy-core-py25和scipy-core-py26;SciPy的程序包有cipy-py24、scipy-py25和scipy-py26。安装针对Python 2.6的NumPy及其他相关程序包的命令如下所示:
$ fink install scipy-core-py26 scipy-py26 matplotlib-py26
时间: 2024-09-17 06:36:57

《Python数据分析》一第1章 Python程序库入门1.1 本书用到的软件的相关文章

《Python编程快速上手——让繁琐工作自动化》——第一部分 Python编程基础 第1章 Python基础 1.1 在交互式环境中输入表达式

第一部分 Python编程基础 第1章 Python基础 Python编程语言有许多语法结构.标准库函数和交互式开发环境功能.好在,你可以忽略大多数内容.你只需要学习部分内容,就能编写一些方便的小程序. 但在动手之前,你必须学习一些基本编程概念.就像魔法师培训,你可能认为这些概念既深奥又啰嗦,但有了一些知识和实践,你就能像魔法师一样指挥你的计算机,完成难以置信的事情. 本章有几个例子,我们鼓励你在交互式环境中输入它们.交互式环境让你每次执行一条Python指令,并立即显示结果.使用交互式环境对于

《Python数据分析》一导读

前 言 Python数据分析"数据分析是Python的杀手锏." --佚名 数据分析在自然科学.生物医学和社会科学领域有着悠久的历史.目前,如雷贯耳的大数据虽然尚没有严格的定义,但是它对数据分析工作的影响是毋庸置疑的.下面列举几个与大数据相关的趋势. 世界人口持续增长. 越来越多的数据被搜集和存储. 电脑芯片集成的晶体管数量不可能无限增长. 政府.科学界.工业界和个人对数据洞察力的需求与日俱增. 随着数据科学的炒作,数据分析也呈现流行之势.与数据科学类似,数据分析也致力于从数据中提取有

《Python数据分析与挖掘实战》一第2章 Python数据分析简介

第2章 Python数据分析简介 Python是一门简单易学且功能强大的编程语言.它拥有高效的高级数据结构,并且能够用简单而又高效的方式进行面向对象编程.Python优雅的语法和动态类型,再结合它的解释性,使其在许多领域成为编写脚本或开发应用程序的理想语言. 要认识Python,首先得明确一点,Python是一门编程语言!这就意味着,原则上来说,它能够完成Matlab能够做的所有事情(因为大不了从头开始编写),而且在大多数情况下,同样功能的Python代码会比Matlab代码更加简洁.易懂:另一

《Python数据分析》一第2章 NumPy数组2.1 NumPy数组对象

第2章 NumPy数组 Python数据分析在前面部分,我们已经安装了NumPy和几个关键Python程序库,并动手编写了一些代码.在本章中,我们将正式步入NumPy数组的世界,带领大家一起学习NumPy和数组的知识.阅读本章后,你会对NumPy数组及其相关函数有个基本了解. 本章涉及的主题如下所示. 数据类型. 数组类型. 类型转换. 创建数组. 索引. 花式索引. 切片(Slicing). 处理数组的形状. 2.1 NumPy数组对象 NumPy中的多维数组称为ndarray,它有两个组成部

《从Excel到Python——数据分析进阶指南》一第1章 生成数据表

第1章 生成数据表从Excel到Python--数据分析进阶指南常见的生成数据表的方法有两种,第一种是导入外部数据,第二种是直接写入数据. Excel中的"文件"菜单中提供了获取外部数据的功能,支持数据库和文本文件和页面的多种数据源导入. Python支持从多种类型的数据导入.在开始使用Python进行数据导入前需要先导入pandas库,为了方便起见,我们也同时导入numpy库. import numpy as np import pandas as pd 导入数据表下面分别是从Exc

第一章 Python基础知识

1.1 介绍      1.1.1 特点      Python是一种面向对象.解释型计算机程序设计语言.语法简洁清晰,强制用空白符作为语句缩进.      Python具有丰富和强大的库,又被称为胶水语言.能把其他语言(主要C/C++)写的模块很轻松的结合在一起.      1.1.2 应用领域         Web网站:有很多优秀的开源Web框架,比如Django(最流行).Tornado(轻量级.异步).Flask(微型).Web.py(简单)等.      数据采集:有好用的http库

python数据分析时出现RunTimeError

问题描述 python数据分析时出现RunTimeError 我在做<Python fo Data Analysis>第8章地震危机数据处理的时候出现了以下错误信息,希望有大神帮忙分析一下. RuntimeError Traceback (most recent call last) <ipython-input-15-b85854eb74f4> in <module>() 80 cat_data = data[data['category_%s' % code] ==

《Python数据分析与挖掘实战》一2.3 Python数据分析工具

2.3 Python数据分析工具 Python本身的数据分析功能不强,需要安装一些第三方扩展库来增强它的能力.本书用到的库有Numpy.Scipy.Matplotlib.Pandas.Scikit-Learn.Keras和Gensim等,下面将对这些库的安装和使用进行简单的介绍. 如果读者安装的是Anaconda发行版,那么它已经自带了以下库:Numpy.Scipy.Mat-plotlib.Pandas和Scikit-Learn. 本章主要是对这些库进行简单的介绍,在后面的章节中,会通过各种案例

《Python数据分析与挖掘实战》一导读

前 言 为什么要写这本书LinkedIn对全球超过3.3亿用户的工作经历和技能进行分析后得出,目前最炙手可热的25项技能中,数据挖掘排名第一.那么数据挖掘是什么?数据挖掘是从大量数据(包括文本)中挖掘出隐含的.先前未知的.对决策有潜在价值的关系.模式和趋势,并用这些知识和规则建立用于决策支持的模型,提供预测性决策支持的方法.工具和过程.数据挖掘有助于企业发现业务的趋势,揭示已知的事实,预测未知的结果,因此"数据挖掘"已成为企业保持竞争力的必要方法. 但跟国外相比,由于我国信息化程度不太