新書推薦:
《
为你想要的生活
》
售價:HK$
67.9
《
关键改变:如何实现自我蜕变
》
售價:HK$
79.4
《
超加工人群:为什么有些食物让人一吃就停不下来
》
售價:HK$
102.4
《
历史的教训(浓缩《文明的故事》精华,总结历史教训的独特见解)
》
售價:HK$
64.4
《
不在场证明谜案(超绝CP陷入冤案!日本文坛超新星推理作家——辻堂梦代表作首次引进!)
》
售價:HK$
59.8
《
明式家具三十年经眼录
》
售價:HK$
538.2
《
敦煌写本文献学(增订本)
》
售價:HK$
227.7
《
耕读史
》
售價:HK$
112.7
|
編輯推薦: |
对于希望使用Python来完成数据分析工作的人来说,学习IPython、Numpy、pandas、Matplotlib这个组合是目前看来不错的方向。《Python数据分析从入门到精通》就是这样一本循序渐进的书。
|
內容簡介: |
对于希望使用Python来完成数据分析工作的人来说,学习IPython、Numpy、pandas、Matplotlib这个组合是目前看来不错的方向。本书就是这样一本循序渐进的书。本书共3篇14章。第1篇是Python数据分析语法入门,将数据分析用到的一些语言的语法基础讲解清楚,为接下来的数据分析做铺垫。第2篇是Python数据分析工具入门,介绍了Python数据分析四剑客IPython、Numpy、pandas、Matplotlib。第3篇是Python数据分析案例实战,包括两个案例,分别是数据挖掘和玩转大数据,为读者能真正使用Python进行数据分析奠定基础。本书内容精练、重点突出、实例丰富,是广大数据分析工作者必备的参考书,同时也非常适合大、中专院校师生学习阅读,还可作为高等院校统计分析及相关专业的教材。
|
關於作者: |
张啸宇:热衷于一切计算机技术,目前在搜狐公司从事数据分析、数据挖掘、深度学习、后端开发等方面的工作。目前计划做一个Python技术学习交流的网站。
|
目錄:
|
目 录
第1篇Python数据分析语法入门
第1章初识Python1
1.1Python是什么2
1.2Python有什么优点3
1.2.1Python是自由开源的软件3
1.2.2Python是跨平台的3
1.2.3Python功能强大4
1.2.4Python是可扩展的4
1.2.5Python易学易用5
1.3其他程序设计语言中的Python5
1.3.1Jython5
1.3.2Python for .NET6
1.3.3IronPython6
1.4快速搭建Python开发环境7
1.4.1Python的下载和安装7
1.4.2用Visual Studio编译Python源代码9
1.4.3Python开发工具:Vim10
1.4.4Python开发工具:Emacs15
1.4.5Python开发工具:PythonWin18
1.4.6其他的Python开发工具20
1.5第一个Python程序22
1.5.1从Hello, Python!开始22
1.5.2Python的交互式命令行24
1.6本章小结25
第2章Python起步必备27
2.1Python代码的组织形式和注释方式27
2.1.1用缩进来分层28
2.1.2代码的两种注释方式29
2.1.3Python语句的断行30
2.2Python的基本输入输出函数31
2.2.1接收输入的input函数31
2.2.2输出内容的print函数32
2.3Python对中文的支持33
2.3.1Python 3之前的版本如何使用中文33
2.3.2更全面的中文支持36
2.4简单实用的Python计算器37
2.4.1直接进行算术运算37
2.4.2math模块提供丰富的数学函数38
2.4.3Python对大整数的支持39
2.5本章小结40
第3章Python的数据类型与流程控制语句41
3.1Python数据类型:数字42
3.1.1整型和浮点型42
3.1.2运算符43
3.2Python数据类型:字符串45
3.2.1Python中的字符串45
3.2.2字符串中的转义字符46
3.2.3操作字符串46
3.2.4字符串的索引和分片49
3.2.5格式化字符串50
3.2.6字符串、数字类型的转换50
3.2.7原始字符串51
3.3Python数据类型:列表和元组52
3.3.1创建和操作列表52
3.3.2创建和操作元组53
3.4Python数据类型:字典54
3.5Python数据类型:文件55
3.6Python数据类型:布尔值56
3.7Python的流程控制语句56
3.7.1分支结构:if语句57
3.7.2循环结构:for语句59
3.7.3循环结构:while语句62
3.8本章小结63
第4章可复用的函数与模块64
4.1Python自定义函数65
4.1.1函数的定义65
4.1.2函数调用66
4.2参数让函数更有价值67
4.2.1有默认值的参数67
4.2.2参数的传递方式69
4.2.3如何传递任意数量的参数70
4.2.4用参数返回计算结果70
4.3变量的作用域71
4.4最简单的函数:使用lambda表达式定义函数72
4.5可重用结构:Python模块73
4.5.1Python模块的基本用法73
4.5.2Python在哪里查找模块75
4.5.3是否需要编译模块77
4.5.4模块也可独立运行78
4.5.5如何查看模块提供的函数名79
4.6用包来管理多个模块80
4.6.1包的组成80
4.6.2包的内部引用81
4.7本章小结81
第5章数据结构与算法82
5.1表、栈和队列82
5.1.1表83
5.1.2栈84
5.1.3队列86
5.2树和图88
5.2.1树88
5.2.2二叉树89
5.2.3图93
5.3查找与排序95
5.3.1查找96
5.3.2排序97
5.4本章小结100
第6章面向对象的Python101
6.1面向对象编程概述101
6.1.1Python中的面向对象思想102
6.1.2类和对象102
6.2在Python中定义和使用类103
6.2.1类的定义104
6.2.2类的使用105
6.3类的属性和方法106
6.3.1类的属性107
6.3.2类的方法108
6.4类的继承111
6.4.1使用继承111
6.4.2Python的多重继承112
6.5在类中重载方法和运算符114
6.5.1方法重载114
6.5.2运算符重载115
6.6在模块中定义类117
6.7本章小结119
第7章异常处理与程序调试120
7.1异常的处理120
7.1.1使用try语句捕获异常121
7.1.2常见异常的处理123
7.1.3多重异常的捕获124
7.2用代码引发异常125
7.2.1使用raise语句引发异常126
7.2.2assert简化的raise语句127
7.2.3自定义异常类128
7.3使用pdb模块调试Python脚本128
7.3.1调试语句块129
7.3.2调试表达式129
7.3.3调试函数130
7.3.4设置断点131
7.3.5pdb调试命令131
7.4在PythonWin中调试脚本134
7.5本章小结136
第8章pip软件包管理137
8.1安装pip137
8.2更新pip138
8.3pip常用操作138
8.3.1安装软件包138
8.3.2卸载软件包139
8.3.3更新软件包139
8.3.4显示本地所有已经安装的软件包139
8.3.5显示软件包的细节139
8.3.6搜索软件包140
8.3.7通过wheel文件安装软件包141
8.4本章小结141
第2篇Python数据分析工具入门
第9章IPython科学计算库142
9.1IPython简介143
9.2安装IPython及其他相关库144
9.2.1使用Anaconda安装144
9.2.2使用pip安装145
9.3IPython壳基础146
9.3.1自动补全147
9.3.2检查149
9.3.3%run命令150
9.3.4快捷键150
9.3.5异常和错误定位151
9.3.6魔法方法151
9.3.7和操作系统交互152
9.3.8代码分析:%prun和%run153
9.3.9目录标签系统155
9.3.10嵌入IPython155
9.4融合Matplotlib库和Pylab模型156
9.5输入和输出变量157
9.6交互式调试器158
9.7计时功能159
9.8重新载入模块160
9.9配置IPython161
9.10Jupyter162
9.10.1基于Qt的控制台162
9.10.2Jupyter Notebook165
9.11IPython和Jupyter Notebook的关系170
9.12本章小结173
第10章Numpy科学计算库174
10.1Numpy基础174
10.1.1数组对象介绍175
10.1.2生成数组176
10.1.3数组对象数据类型180
10.1.4打印数组182
10.2数组的基本操作184
10.3基本的分片和索引操作186
10.4高级索引189
10.4.1整数索引189
10.4.2布尔索引190
10.4.3布尔索引的简单应用192
10.5改变数组的形状193
10.6组装、分割数组195
10.7数组的基本函数196
10.8复制和指代198
10.9线性代数199
10.10使用数组来处理数据201
10.11Numpy的where函数和统计函数203
10.11.1where函数203
10.11.2统计函数205
10.12输入与输出206
10.12.1二进制文件206
10.12.2文本文件207
10.13生成随机数208
10.14数组的排序和查找210
10.14.1排序210
10.14.2查找212
10.15扩充转换213
10.16本章小结215
第11章pandas数据分析处理库216
11.1pandas数据结构介绍217
11.1.1序列217
11.1.2数据框221
11.2索引对象226
11.3核心的基本函数227
11.4索引和旋转229
11.5算术运算与对齐232
11.6处理默认值233
11.7多级索引237
11.8读写数据239
11.9组合数据243
11.10数据分组操作247
11.11时间序列249
11.11.1时间序列介绍250
11.11.2使用时间序列作图253
11.12本章小结259
第12章Matplotlib数据可视化260
12.1Pyplot模块介绍261
12.1.1plot函数261
12.1.2绘制子图264
12.1.3添加注释266
12.1.4其他的坐标轴类型268
12.2应用Pyplot模块269
12.3Artist模块275
12.3.1Artist模块概述275
12.3.2Artist的属性277
12.4使用pandas绘图283
12.5本章小结287
第3篇Python数据分析案例实战
第13章案例1:数据挖掘288
13.1贝叶斯理论介绍288
13.2贝叶斯分类器的实现290
13.3协同过滤推荐系统295
13.3.1相似度计算296
13.3.2协同过滤推荐系统的实现300
13.4本章小结304
第14章案例2:玩转大数据305
14.1案例概述306
14.1.1了解大数据的处理方式306
14.1.2处理日志文件307
14.1.3案例目标308
14.2日志文件的分割309
14.3编写Map函数处理小文件311
14.4编写Reduce函数313
14.5本章小结315
|
內容試閱:
|
前 言
由于Python具有简单、易学、免费开源、可移植性、可扩展性等特点,所以它的受欢迎程度扶摇直上。再加上Python拥有非常丰富的库,这也使得它在数据分析领域有着越来越广泛的应用。如果你已经决定学习Python数据分析,但是之前没有编程经验,那么本书将会是你的正确选择。
本书的第1篇主要介绍学习数据分析必备的一些Python语法基础,包括Python的安装、数据类型、数据结构、模块、类、异常处理、使用pip安装Python需要的一些工具等;第2篇主要介绍Python在数据处理和科学计算方面的工具和方法,包括IPython交互式壳的使用、Jupyter Notebook的使用和Numpy的使用,还介绍了Python的核心数据分析处理库pandas,以及Python著名的2D绘图库Matplotlib;第3篇通过数据挖掘和玩转大数据两个案例总结和应用前面所学的知识。
这三篇的层进正好是Python数据分析入门者的阶梯,读者通过学习这三部分内容,即可迈入数据分析的门槛。
本书的特点
Python是当前非常流行的面向对象编程语言,本书将其在数据分析处理方面的特色发挥到极致。本书的主要特点如下:
? Python被大量应用在数据挖掘和机器学习领域,其中使用极其广泛的是IPython、Numpy、pandas、Matplotlib等库。本书详细地介绍了这些库的组成与使用,为科学计算相关人员提供了有用的参考资料。
? 本书采取循序渐进的写作风格,对于工具的安装、使用步骤、方法技巧逐步展开,加以图解和应用场景,即使完全不懂Python和数据分析的人员,也可以流畅地读完本书。
? 无论哪种语言,编程的方法、模式、数据结构、算法都是相通的。本书将科学计算、数据结构与各种工具和方法完美结合,让非Python读者也能融会贯通,让学习统计的人能找到更适合的统计方法和数据分析处理方法。
? 本书最后的两个实战案例适合数据分析入门者,案例的步骤详细、分析到位,能为读者入手真实项目打下良好的基础。
本书的内容安排
本书共3篇14章,主要章节规划如下:
第1章介绍了Python的发展历程、特性,帮助读者搭建最基础的数据分析环境,下载开发语言,选择开发工具,然后在此基础上开发自己的第一个Python程序。读者在学完本章内容后应该对Python有一个基础的认识,知道为什么选择它来进行数据分析。
第2章介绍了Python的基础语法,包括它的代码组织形式、如何缩进、如何注释等,以及输入输出该如何处理,在中文环境下如何更好地使用Python是本章的重点,最后还通过一个实例复习了Python的这些语法。读者在学完本章内容后可以轻松地编写一些简单的Python程序。
第3章介绍了Python的数据类型与流程控制语句。如果读者已有编程基础,那么阅读本章内容不会有任何压力。如果没有编程基础,那么学习一门语言的流程控制最关键的就是这些知识。读者在阅读完本章后就能轻松阅读更大的Python程序。
第4章介绍了可复用的函数与模块。这些内容较为复杂,但却是进行数据分析的关键。每个数据处理过程我们都会用到函数或模块,而我们后期用到的数据分析库也可以说是一个大函数。所以学习完本章内容,读者应该能够看明白一个完整的Python库。
第5章介绍了数据结构与算法,这是数据分析的基础,也是人工智能的基础。利用算法我们可以找到解决方案,也可以找到最优路径,还可以更高效地完成数据分析任务。读者如果没有看懂本章内容,一定要反复阅读,直到学会为止。
第6章介绍了面向对象的Python。面向对象已经成为每门语言都具备的特性,类、对象、继承这些概念都是面向对象的基础。如果读者没有编程经验,则阅读本章可能会有一定的难度,但是了解了对象的概念,就能学会如何编写更高效的代码、如何让代码和代码之间联动起来。
第7章介绍了异常处理与程序调试。机器毕竟不是人,如果出现错误,则可能会导致死机,或者数据出错。为了防止这些错误的发生,或者防止程序的使用方能得到反馈,我们必须学会Python的异常处理功能。并且当程序发生错误时,我们还要通过程序调试找到错误所在。
第8章介绍了pip软件包管理。既然在做数据分析时我们要用到很多数据分析库,那么如何下载、安装或管理这些库就成了数据分析的第一步。pip就是这样一个工具,它能下载、安装、更新、显示、搜索我们需要的数据分析库。
第9章介绍了IPython科学计算库,它是使用Python进行数据分析、处理、呈现的重要选择之一。本章主要介绍了Python科学计算库的安装方法、IPython壳的一些特性和基本功能、Jupyter Notebook的安装和使用方法。IPython壳的使用是本章的重点,也是数据分析处理的基础工具,希望读者能够消化本章内容,为真正做好数据项目打下基础。
第10章介绍了Numpy科学计算库,主要介绍了它的数组对象及数组对象的一些基本属性和生成数组的基本方法,还包括数组的索引和分片等基本操作,这部分内容是Numpy数据处理的核心。本章介绍的代数运算函数、线性代数、统计函数等内容会让读者觉得有些困惑,但这已经进入了数据分析的关键时刻,所以仍建议读者对本章的内容融会贯通。
第11章介绍了pandas数据分析处理库,主要包括它的序列、数据框的基本操作,还包括pandas里处理默认值、读取常见格式的文本数据,以及数据的组合和分组操作。最后介绍了pandas的时间序列和一个处理实际数据集的案例,读者掌握了这些内容,就可以更好地处理数据。
第12章介绍了Matplotlib的Pyplot和Artist模块,以及pandas的绘图功能。对于读者来说,Pyplot模块是需要掌握的,Artist模块是需要了解的,pandas的绘图功能在实际数据分析中要能熟练应用。
第13章是数据挖掘的案例。首先介绍了著名的贝叶斯理论,然后实现了贝叶斯分类器,最后实现了协同过滤算法,这些都是数据挖掘、分析领域的基础算法。建议读者尝试自己编写代码,熟练掌握贝叶斯分类器和协同过滤算法的使用。
第14章是玩转大数据的案例。鉴于本书主要针对数据分析入门者,所以本章也逐步实现了数据的分析过程,从了解数据到分析数据,最后到代码实现,相信读者学完本章内容后,就能真正动手分析大数据了。
本书由浅入深、从理论到实践,尤其适合初学者逐步学习和完善自己的知识结构。
适合阅读本书的读者
? 希望从事数据分析相关工作的人员。
? 数据分析工作人员。
? 大数据从业人员。
? Python爱好者。
? 人工智能从业人员。
? 统计行业的人员。
? 大、中专院校统计相关专业的学生。
|
|