内容简介

《基于Python的大数据分析基础及实战》是一本介绍如何用Python3.6进行数据处理和分析的学习指南。其主要内容包括:Python语言基础、数据处理、数据分析、数据可视化,以及利用Python对数据库的操作、自建Python应用库的共享发布等。

《基于Python的大数据分析基础及实战》分3个部分:第1部分为基础知识,第2部分为实战案例,第3部分为拓展与延伸。《基于Python的大数据分析基础及实战》内容丰富,讲解通俗易懂,非常适合本科生、研究生,以及对Python语言感兴趣或者想要使用Python语言进行数据分析的广大读者。

作者简介

余本国,博士,硕士研究生导师。于中北大学理学系任教,主讲线性代数、微积分、Python语言、大数据分析基础等课程。2012年到加拿大YorkUniversity做访问学者。出版有《Python数据分析基础》等著作。

目录

第1部分基础篇

第1章

Python语言基础/2

1.0引子/2

1.1工欲善其事,必先利其器(安装Python)/3

1.2学跑得先学走(语法基础)/9

1.3程序结构/11

1.3.1HelloWorld!/11

1.3.2运算符介绍/12

1.3.3顺序结构/14

1.3.4判断结构/17

1.3.5循环结构/18

1.3.6异常/20

1.4函数/24

1.4.1基本函数结构/24

1.4.2参数结构/25

1.4.3回调函数/28

1.4.4函数的递归与嵌套/28

1.4.5闭包/31

1.4.6匿名函数lambda/32

1.4.7关键字yield/32

1.5数据结构/35

1.5.1列表(list)/35

1.5.2元组(tuple)/38

1.5.3集合(set)/39

1.5.4字典(dict)/40

1.5.5集合的操作/41

1.5.6学以致用/45

1.63个函数(map、filter、reduce)/47

1.6.1遍历函数(map)/47

1.6.2筛选函数(filter)/48

1.6.3累计函数(reduce)/48

1.7面向对象编程基础/50

1.7.1类/50

1.7.2类和实例/51

1.7.3数据封装/52

1.7.4私有变量与私有方法/53

本章小结/54

第2章

数据处理/60

2.1Anaconda简介/60

2.2Numpy简介/66

2.3关于Pandas/68

2.3.1什么是Pandas/68

2.3.2Pandas中的数据结构/68

2.4数据准备/68

2.4.1数据类型/68

2.4.2数据结构/69

2.4.3数据导入/79

2.4.4数据导出/86

2.5数据处理/88

2.5.1数据清洗/89

2.5.2数据抽取/97

2.5.3插入记录/114

2.5.4修改记录/117

2.5.5交换行或列/120

2.5.6排名索引/122

2.5.7数据合并/131

2.5.8数据计算/137

2.5.9数据分组/141

2.5.10日期处理/143

带你飞(数据处理案例)/148

本章小结/160

第3章

数据分析/165

3.1基本统计分析/165

3.2分组分析/169

3.3分布分析/171

3.4交叉分析/173

3.5结构分析/174

3.6相关分析/176

小试牛刀(相关分析案例:电商数据分析)/178

本章小结/180

第4章

数据可视化/181

4.1使用Python对数据进行可视化处理/181

4.1.1准备工作/181

4.1.2Matplotlib绘图示例/186

4.1.3Seabon中的图例/198

4.1.4pandas的一些可视化功能/212

4.1.5文本数据可视化/217

4.1.6networkx网络图/218

4.1.7folium绘制地图/220

4.2Python图像处理基础/221

4.2.1PIL图库/221

4.2.2OpenCV图库/224

本章小结/226

第5章

字符串处理与网络爬虫/228

5.1字符串处理/228

5.1.1字符串处理函数/228

5.1.2正则表达式/230

5.1.3编码处理/237

5.2网络爬虫/240

5.2.1获取网页源码/240

5.2.2从源码中提取信息/241

5.2.3数据存储/246

5.2.4网络爬虫从这里开始/248

本章小结/260

第2部分实战案例篇

第6章

词云/262

6.1安装文件包/263

6.2jieba功能用法/264

6.2.1cut用法/264

6.2.2词频与分词字典/265

6.3文本词云图/269

6.4背景轮廓词云图的制作/271

6.4.1数据准备/271

6.4.2分词/272

6.4.3构建词云/273

本章小结/278

第7章

航空客户分类/279

7.1问题的提出/279

7.2聚类分析相关概念/280

7.3模型的建立/281

7.4Python实现代码/281

7.5分类结果展示与分析/284

本章小结/287

第8章

《红楼梦》文本分析/288

8.1准备工作/289

8.2分词/291

8.2.1读取数据/291

8.2.2数据预处理/293

8.2.3对红楼梦进行分词/301

8.2.4制作词云/303

8.3文本聚类分析/312

8.3.1构建分词TF-IDF矩阵/312

8.3.2使用TF-IDF矩阵对章节进行聚类/314

8.4LDA主题模型/322

8.5人物社交网络分析/328

本章小结/334

第3部分拓展与延伸

第9章

Python字符串格式化/336

9.1使用%符号进行格式化/336

9.2使用format()方法进行格式化/339

9.3使用f方法进行格式化/341

本章小结/342

第10章

在Python中操作MySQL数据库/343

10.1对MySQL的连接与访问/344

10.2对MySQL的增、删、改、查操作/345

10.2.1查询操作/345

10.2.2插入操作/346

10.2.3更新操作/347

10.2.4删除操作/347

10.3创建数据库表/348

本章小结/349

第11章

fractal(分形)库的发布/350

11.1用Python绘制分形/351

11.1.1分形简介/351

11.1.2先睹为快/351

11.1.3绘制方法简介/352

11.2第三方库发布到PyPi/364

本章小结/369

参考文献/370

前言/序言

数据分析是科学研究中的重要环节。有人曾这样定义:数据分析是有针对性地收集、加工、整理数据,并采用数据统计、挖掘技术分析和解释数据的科学与艺术!《基于Python的大数据分析基础及实战》就是针对数据分析而量身定做的,旨在引导对数据分析感兴趣和拟从事数据分析的读者入门,感受和领略Python数据处理及分析的魅力。

Python是当今炙手可热的数据分析工具,是一种面向对象的解释型计算机程序设计语言,拥有丰富和强大的库,已经成为继Java、C++之后的第三大语言。其特点是简单易学、免费开源、高级语言、可移植性强、面向对象,具有可扩展性、可嵌入性、丰富的库、规范的代码等。Python除了极少的事情不能做之外,基本上可以说是全能的,广泛应用在系统运维、图形处理、数学处理、文本处理、数据库编程、网络编程、Web编程、多媒体应用、PYMO引擎(PYMO全称为PythonMemoriesOff)、黑客编程、爬虫编写、机器学习、人工智能等方面。

在学习数据分析类书籍之前,一定有许多“小白”跟当初的笔者一样未战先怯:数据分析要用到那么多的数学知识,还要用到编程知识,我能行吗?一提到“数学”,估计很多人连勇气都没有了,直接就放弃了。另外对计算机编程的要求,很多人会问是不是要对Python很精通才行?

其实这些多是误解。先来说说数学,如果仅仅做数据的一般分析,那对数学知识的要求其实根本没有读者想象的那么难,甚至根本用不上“高大上”的数学知识。对于编程更是这样,Python语言极其简单,完全可以现学现用。曾有人说,20个小时就能搞定Python。只要读者能跟着《基于Python的大数据分析基础及实战》认真地输入代码,一定能够自如地利用Python工具在数据的海洋中遨游。俗话说:“拳不离手,曲不离口”,学习编程也要亲自多敲代码,复制、粘贴源代码对于学习编程是没有益处的,尽管数据分析中需要的编程知识不多。

在《基于Python的大数据分析基础及实战》的写作过程中,得到了中北大学Python实验室各位同学的帮助和支持。陈粮同学执笔编写和测试了第9章;孙玉林、周俊琦同学执笔编写和测试了《红楼梦》文本分析代码;另外,杨阳、袁凤恩、温一川、魏炳琦、张方等同学对《基于Python的大数据分析基础及实战》的部分代码进行了测试及校对工作,在此一并表示感谢。

由于时间仓促,书中错误及疏漏之处在所难免,恳请读者批评指正。《基于Python的大数据分析基础及实战》对应的视频教程、源代码及源数据,可以扫描下方二维码,关注微信公众号进行获取。


其他推荐