利用Python进行数据分析

利用Python进行数据分析

详情
内容推荐

本书讲的是利用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语言精要

前  言
前言
针对科学计算领域的Python开源库生态系统在过去10年中得到了飞速发展。2011年底,我深深地感觉到,由于缺乏集中的学习资源,刚刚接触数据分析和统计应用的Python程序员举步维艰。针对数据分析的关键项目(尤其是NumPy、matplotlib和pandas)已经很成熟了,也就是说,写一本专门介绍它们的图书貌似不会很快过时。因此,我下定决心要开始这样的一个写作项目。我在2007年刚开始用Python进行数据分析工作时就希望能够得到这样一本书。希望你也能觉得本书有用,同时也希望你能将书中介绍的那些工具高效地运用到实际工作中去。
本书的约定
本书使用了以下排版约定:
斜体(Italic)
用于新术语、URL、电子邮件地址、文件名与文件扩展名。
媒体评论

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

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

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

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

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

在线试读部分章节
第1章
准备工作
本书主要内容
本书讲的是利用Python进行数据控制、处理、整理、分析等方面的具体细节和基本要点。同时,它也是利用Python进行科学计算的实用指南(专门针对数据密集型应用)。本书重点介绍了用于高效解决各种数据分析问题的Python语言和库。本书没有阐述如何利用Python实现具体的分析方法。
当书中出现“数据”时,究竟指的是什么呢?主要指的是结构化数据(structureddata),这个故意含糊其辞的术语代指了所有通用格式的数据,例如:
多维数组(矩阵)。
表格型数据,其中各列可能是不同的类型(字符串、数值、日期等)。比如保存在关系型数据库中或以制表符/逗号为分隔符的文本文件中的那些数据。
通过关键列(对于SQL用户而言,就是主键和外键)相互联系的多个表。
间隔平均或不平均的时间序列。
这绝不是一个完整的列表。大部分数据集都能被转化为更加适合分析和建模的结构化形式,虽然有时这并不是很明显。如果不行的话,也可以将数据集的特征提取为某种结构化形式。例如,一组新闻文章可以被处理为一张词频表,而这张词频表就可以用于情感分析。
大部分电子表格软件(比如MicrosoftExcel,它可能是世界上使用最广泛的数据分析工具了)的用户不会对此类数据感到陌生。
为什么要使用Python进行数据分析
许许多多的人(包括我自己)都很容易爱上Python这门语言。自从1991年诞生以来,Python现在已经成为最受欢迎的动态编程语言之一,其他还有Perl、Ruby等。由于拥有大量的Web框架(比如Rails(Ruby)和Django(Python)),最近几年非常流行使用Python和Ruby进行网站建设工作。这些语言常被称作脚本(scripting)语言,因为它们可以用于编写简短而粗糙的小程序(也就是脚本)。我个人并不喜欢“脚本语言”这个术语,因为它好像在说这些语言无法用于构建严谨的软件。在众多解释型语言中,Python最大的特点是拥有一个巨大而活跃的科学计算(scientificcomputing)社区。进入21世纪以来,在行业应用和学术研究中采用Python进行科学计算的势头越来越猛。
发表评论
壹 加 伍 =
评论通过审核后显示。