利用Python进行数据分析图书
人气:54

利用Python进行数据分析

本书重点介绍了用于高效解决各种数据分析问题的Python语言和库。《利用Python进行数据分析》没有阐述如何利用Python实现具体的分析方法。
  • 所属分类:图书 >计算机/网络>程序设计>其他  
  • 作者:(美)[麦金尼]著,[唐学韬]等译
  • 产品参数:
  • 丛书名:O'Reilly精品图书系列
  • 国际刊号:9787111436737
  • 出版社:机械工业出版社
  • 出版时间:2014-01
  • 印刷时间:2014-01-01
  • 版次:1
  • 开本:16开
  • 页数:--
  • 纸张:胶版纸
  • 包装:平装
  • 套装:

内容简介

本书讲的是利用Python进行数据控制、处理、整理、分析等方面的具体细节和基本要点。同时,它也是利用Python进行科学计算的实用指南(专门针对数据密集型应用)。本书重点介绍了用于高效解决各种数据分析问题的Python语言和库。《利用Python进行数据分析》没有阐述如何利用Python实现具体的分析方法。

作者简介

Wes McKinney,博学数据分析专家,对各种Python库(包括NumPy、pandas、matplotlib以及IPython等)等都有深入研究,并在大量的实践中积累了丰富的经验。撰写了大量与Python数据分析相关的经典文章,被各大技术社区争相转载,是Python和开源技术社区公认的人物之一。开发了用于数据分析的著名开源Python库——pandas,广获用户好评。在创建Lambda Foundry(一家致力于企业数据分析的公司)之前,他曾是AQR Capital Management的定量分析师。

目录

前言

第1章 准备工作

本书主要内容

为什么要使用Python进行数据分析

重要的Python库

安装和设置

社区和研讨会

使用本书

致谢

第2章 引言

来自bit.ly的1.usa.gov数据

MovieLens 1M数据集

1880-2010年间全美婴儿姓名

小结及展望

第3章 IPython:一种交互式计算和开发环境

IPython基础

内省

使用命令历史

与操作系统交互

软件开发工具

IPython HTML Notebook

利用IPython提高代码开发效率的几点提示

高级IPython功能

致谢

第4章 NumPy基础:数组和矢量计算

NumPy的ndarray:一种多维数组对象

通用函数:快速的元素级数组函数

利用数组进行数据处理

用于数组的文件输入输出

线性代数

随机数生成

范例:随机漫步

第5章 pandas入门

pandas的数据结构介绍

基本功能

汇总和计算描述统计

处理缺失数据

层次化索引

其他有关pandas的话题

第6章 数据加载、存储与文件格式

读写文本格式的数据

二进制数据格式

使用HTML和Web API

使用数据库

第7章 数据规整化:清理、转换、合并、重塑

合并数据集

重塑和轴向旋转

数据转换

字符串操作

示例:USDA食品数据库

第8章 绘图和可视化

matplotlib API入门

pandas中的绘图函数

绘制地图:图形化显示海地地震危机数据

Python图形化工具生态系统

第9章 数据聚合与分组运算

GroupBy技术

数据聚合

分组级运算和转换

透视表和交叉表

示例:2012联邦选举委员会数据库

第10章 时间序列

日期和时间数据类型及工具

时间序列基础

日期的范围、频率以及移动

时区处理

时期及其算术运算

重采样及频率转换

时间序列绘图

移动窗口函数

性能和内存使用方面的注意事项

第11章 金融和经济数据应用

数据规整化方面的话题

分组变换和分析

更多示例应用

第12章 NumPy高级应用

ndarray对象的内部机理

高级数组操作

广播

ufunc高级应用

结构化和记录式数组

更多有关排序的话题

NumPy的matrix类

高级数组输入输出

性能建议

附录A Python语言精要

在线预览

第1章

准备工作

本书主要内容

本书讲的是利用Python进行数据控制、处理、整理、分析等方面的具体细节和基本要点。同时,它也是利用Python进行科学计算的实用指南(专门针对数据密集型应用)。本书重点介绍了用于高效解决各种数据分析问题的Python语言和库。本书没有阐述如何利用Python实现具体的分析方法。

当书中出现“数据”时,究竟指的是什么呢?主要指的是结构化数据(structured data),这个故意含糊其辞的术语代指了所有通用格式的数据,例如:

多维数组(矩阵)。

表格型数据,其中各列可能是不同的类型(字符串、数值、日期等)。比如保存在关系型数据库中或以制表符/逗号为分隔符的文本文件中的那些数据。

通过关键列(对于SQL用户而言,就是主键和外键)相互联系的多个表。

间隔平均或不平均的时间序列。

这绝不是一个完整的列表。大部分数据集都能被转化为更加适合分析和建模的结构化形式,虽然有时这并不是很明显。如果不行的话,也可以将数据集的特征提取为某种结构化形式。例如,一组新闻文章可以被处理为一张词频表,而这张词频表就可以用于情感分析。

大部分电子表格软件(比如Microsoft Excel,它可能是世界上使用最广泛的数据分析工具了)的用户不会对此类数据感到陌生。

为什么要使用Python进行数据分析

许许多多的人(包括我自己)都很容易爱上Python这门语言。自从1991年诞生以来,Python现在已经成为受欢迎的动态编程语言之一,其他还有Perl、Ruby等。由于拥有大量的Web框架(比如Rails(Ruby)和Django(Python)),最近几年非常流行使用Python和Ruby进行网站建设工作。这些语言常被称作脚本(scripting)语言,因为它们可以用于编写简短而粗糙的小程序(也就是脚本)。我个人并不喜欢“脚本语言”这个术语,因为它好像在说这些语言无法用于构建严谨的软件。在众多解释型语言中,Python较大的特点是拥有一个巨大而活跃的科学计算(scientific computing)社区。进入21世纪以来,在行业应用和学术研究中采用Python进行科学计算的势头越来越猛。

在数据分析和交互、探索性计算以及数据可视化等方面,Python将不可避免地接近于其他开源和商业的领域特定编程语言/工具,如R、MATLAB、SAS、Stata等。近年来,由于Python有不断改良的库(主要是pandas),使其成为数据处理任务的一大替代方案。结合其在通用编程方面的强大实力,我们可以只使用Python这一种语言去构建以数据为中心的应用程序。

把Python当做粘合剂

作为一个科学计算平台,Python的成功部分源于其能够轻松地集成C、C 以及Fortran代码。大部分现代计算环境都利用了一些Fortran和C库来实现线性代数、挑选、积分、快速傅里叶变换以及其他诸如此类的算法。许多企业和国家实验室也利用Python来“粘合”那些已经用了30多年的遗留软件系统。

大多数软件都是由两部分代码组成的:少量需要占用大部分执行时间的代码,以及大量不经常执行的“粘合剂代码”。粘合剂代码的执行时间通常是微不足道的。开发人员的精力几乎都是花在优化计算瓶颈上面的,有时更是直接转用更低级的语言(比如C)。

最近这几年,Cython项目已经成为Python领域中创建编译型扩展以及对接C/C 代码的一大途径。

解决“两种语言”问题

很多组织通常都会用一种类似于领域特定的计算语言(如MATLAB和R)对新的想法进行研究、原型构建和测试,然后再将这些想法移植到某个更大的生产系统中去(可能是用Java、C#或C 编写的)。人们逐渐意识到,Python不仅适用于研究和原型构建,同时也适用于构建生产系统。我相信越来越多的企业也会这样看,因为研究人员和工程技术人员使用同一种编程工具将会给企业带来非常显著的组织效益。

为什么不选Python

虽然Python非常适合构建计算密集型科学应用程序以及几乎各种各样的通用系统,但它对于不少应用场景仍然力有不逮。

由于Python是一种解释型编程语言,因此大部分Python代码都要比用编译型语言(比如Java和C )编写的代码运行慢得多。由于程序员的时间通常都比CPU时间值钱,因此许多人也愿意在这里做一些权衡。但是,在那些要求延迟非常小的应用程序中(例如高频交易系统),为了尽较大可能地优化性能,耗费时间使用诸如C 这样更低级、更低生产率的语言进行编程也是值得的。

对于高并发、多线程的应用程序而言(尤其是拥有许多计算密集型线程的应用程序),Python并不是一种理想的编程语言。这是因为Python有一个叫做全局解释器锁(Global Interpreter Lock,GIL)的东西,这是一种防止解释器同时执行多条Python字节码指令的机制。有关“为什么会存在GIL”的技术性原因超出了本书的范围,但是就目前来看,GIL并不会在短时间内消失。虽然很多大数据处理应用程序为了能在较短的时间内完成数据集的处理工作都需要运行在计算机集群上,但是仍然有一些情况需要用单进程多线程系统来解决。

这并不是说Python不能执行真正的多线程并行代码,只不过这些代码不能在单个Python进程中执行而已。比如说,Cython项目可以集成OpenMP(一个用于并行计算的C框架)以实现并行处理循环进而大幅度提高数值算法的速度。"

……

媒体评论

“O’Reilly Radar博客有口皆碑。”

——Wired

“O’Reilly凭借一系列(真希望当初我也想到了)非凡想法建立了数百万美元的业务。”

——Business 2.0

“O’Reilly Conference是聚集关键思想领袖的典范。”

——CRN

“一本O’Reilly的书就代表一个有用、有前途、需要学习的主题。”

——Irish Times

“Tim是位特立独行的商人,他不光放眼于最长远、最广阔的视野并且切实地按照Yogi Berra的建议去做了:‘如果你在路上遇到岔路口,走小路(岔路)。’回顾过去Tim似乎每一次都选择了小路,而且有几次都是一闪即逝的机会,尽管大路也不错。”

——Linux Journal

网友评论(不代表本站观点)

来自无昵称**的评论:

难得花时间读了70%以上的技术书,作为数据分析的入门应该不错,让你对这些工具有个感性的认识,作者自己是做金融分析的,很多专业内容不作解释就顺手拈来,要搞懂书上提到的所有内容不容易,需要有一定的知识储备才行,总之拿来入门还算不错,看完想直接拿来应用还是需要实践的。

2014-06-27 18:50:48
来自无昵称**的评论:

书挺好的,完好无损,学习python数据分析很棒

2017-11-09 16:47:44
来自匿名用**的评论:

有编程基础的可以购买,从计算机数据挖掘需要一定的毅力,书很好。

2017-03-12 23:00:31
来自p***a(**的评论:

包装很好,希望看完了之后python技术可以有所提高~

2017-04-27 21:38:48
来自匿名用**的评论:

当当购物体验这次真的太挫了,不管是物流,还是网站本身...希望改进啊...

2017-04-29 20:36:19
来自波***我**的评论:

发货神速,没有磕碰!还没看,听说是入门到高级的好书,赞一个

2017-04-25 07:24:54
来自w***y(**的评论:

整体感觉不错,但我希望Numpy框架讲的更详细一点

2017-03-21 17:16:33
来自kaoshiy**的评论:

社区公认的权威人物之一。开发了用于数据分析的著名开源库——,广获用户好评。在创

2015-12-19 17:06:45
来自无昵称**的评论:

不如叫做python重要第三方库概述,纯语法,用到可以上网找,没很大必要特意去出书,毕竟真没必要看那么全面的语法

2016-05-17 18:22:29
来自匿名用**的评论:

书质量不错,内容也很好,Python现在很火,也确实有实用,值得一学。

2017-04-23 21:14:23
来自匿名用**的评论:

和学习手册一个毛病,客服催单,两天到了。没催之前,三天都没动静。所以以后大家要是书老不来,找人工客服吧。

2017-04-28 16:45:12
来自匿名用**的评论:

昨天晚上买的,今天早上就到了,快到让我怀疑人生。印刷质量很好,粗略翻看了一下,基本能满足需求,手动5分!

2017-03-29 23:30:15
来自无昵称**的评论:

看了一下,内容还是不错的,不过有这些内容已经不是太适合了,要去看作者的github才行。

2017-08-24 23:50:45
来自徐***(**的评论:

老弟买来进行专业课学习的,这本书对于计算机专业的学生来说是一本很好的学习用书

2017-04-30 21:15:51
来自无昵称**的评论:

昨晚拿到手就开始学习了,老外的讲解很细致,译者很负责,在关键的地方会有提示引导,挺不错的

2017-09-20 07:36:48
来自无昵称**的评论:

包装很好,没有破损。书的纸张,也很好,是正版。该书适合已经有一些python基础的人使用。如果纯粹做数据分析,还是用R语言比较好。给个好评吧!

2015-09-11 12:29:03
来自无昵称**的评论:

通过实例逐步深入,可以有效的引导读者探知数据分析的核心

2017-08-17 15:33:29
来自无昵称**的评论:

书的纸张相当的不错,本书的内容讲了python中Numpy和pandas等几个包的数据分析方法,还没来得及具体看。

2016-04-29 14:46:21
来自无昵称**的评论:

内容很充实,手把手教你用python做数据分析

2017-08-29 09:04:41
来自p***6(**的评论:

还没有看,开始学习入门基础教程,之后再看数据分析

2017-07-22 18:00:00
来自无昵称**的评论:

这本书是Pandas的模块作者写的书。总的来说Python提供了很多方便,但是这种方便还是需要付出一定的学习成本的。

2016-04-23 11:27:18
来自liksmi**的评论:

属于有一定Python还有数据分析基础的人学习的书本,是正版,不管是页面还是包装都不错

2016-01-22 21:10:04
来自无昵称**的评论:

还没开始看,但Python用于数据分析很有用。

2016-09-06 12:04:28
来自古***魂**的评论:

数据分析的入门教材。建议你用python,而这本书介绍了python用于数据分析的几个常用的python库。作为一本基础教材,还是很棒的!

2017-09-23 11:09:23
来自瑞瑟尔**的评论:

非常好的一本Python进阶书籍,看了一段时间感觉收获颇丰,不仅内容详实,而且有不少实例可以练手。此外书的质感和打印质量相当不错,总体来说算是一次很赞的购书体验

2016-10-17 12:25:50
来自无昵称**的评论:

正在学Python和大数据,还没看多少,不过感觉书还不错

2015-04-02 16:02:26
来自千江流**的评论:

如果你不想学复杂的编程语言又想自由实现算法,用python来快速实现算法将是最佳选择,本身是我目前见过的唯一一本系统讲解python数据分析的书

2014-11-16 01:31:40
来自无昵称**的评论:

入门书,零基础看了这本书也能用python的pandas和matplotlib进行一些简单的数据分析,数据分析不在乎用什么工具,而是有目的地去找一y些insight,下一步我需要达到的效果是:如果产生一个想法,能用工具快速验证(如数据预处理,绘出图标等)。唯一缺点就是没有源代码提供

2016-04-23 00:14:38
来自匿名用**的评论:

生命的尽头,就像人在黄昏时分读书,读啊读,没有察觉到光线渐暗;直到他停下来休息,才猛然发现白天已经过去,天已经很暗;再低头看书却什么都看不清了,书页已不再有意义。

2017-09-20 17:57:09
登录后即可发表评论

免责声明

更多相关图书
在线咨询