本书介绍利用Python进行大数据处理与分析的详细方法和步骤。全书共9章,主要内容包括搭建开发环境、Numpy库、Pandas库、Matplotlib库、数据预处理以及多个案例分析。本书注重理论紧密联系实际,使读者可以系统、全面地了解Python大数据处理与分析的实用技术和方法。
本书可作为高等院校Python大数据处理与分析相关课程的教材,也可以作为计算机相关专业的专业课或选修课教材,同时还可以作为从事Python与大数据技术相关工作人员的参考用书。
1.本书为计算机类专业教指委-华为大数据产学合作项目之一
2.Python的基本库——NumPy、Pandas和Matplotlib库+4个处理与分析的案例
3.提供PPT、源代码
4.适合开设Python或者大数据技术相关课程的高校作为教材使用,也适合从事Python与大数据技术相关工作的人员自用
安俊秀,教授,硕士生导师。2004年毕业于西安交通大学计算机科学与技术专业,获工学硕士学位。2016年-2017年美国加州大学河滨分校(UCR)公派访问学者,2014年-2015年美国科罗拉多大学斯普林司分校(UCCS)访问学者。软件自动生成与智能服务四川省重点实验室学术带头人(领域知识本体和大数据方向)。作为项目负责人承担国家自然基金面上项目1项(71673032),作为主研人员参与国家级项目6项。已发表研究领域相关论文及发明专利40余篇。主编完成专著或教材10余部,均是云计算与大数据方向,由国家级出版社出版(如Linux操作系统基础教程、Hadoop大数据处理技术基础与实践、云计算与大数据技术应用等),其中2016年出版了有影响力的独著:量化社会——大数据与社会计算。国家自然科学基金委通讯评审专家,四川省科技项目评审专家,成都市科技攻关计划评审专家,成都军区项目评审专家。
1993年进入山西大学商务学院任教,2006年底调入成都信息工程大学任教。
最近三年,先后承担了《Linux体系和编程》、《软件工程项目管理》、《工程导论》、《计算机组成原理》等本科课程;承担了《云计算与大数据》、《并行计算》、《Hadoop处理技术》等研究生课程。
第 一部分 基础篇
第 1章 搭建开发环境 2
1.1 Python解释器的安装 2
1.1.1 在Windows系统下安装Python解释器 2
1.1.2 在Linux系统下安装Python解释器 6
1.1.3 在macOS系统下安装Python解释器 10
1.1.4 运行第 一个hello world程序 12
1.2 Anaconda的安装及环境变量配置 12
1.2.1 Anaconda简介 12
1.2.2 安装Anaconda 14
1.2.3 配置Anaconda环境变量 16
1.3 Jupyter Notebook与PyCharm的安装及工程环境设置 17
1.3.1 Jupyter Notebook的简介与安装 18
1.3.2 设置Jupyter Notebook工程环境 19
1.3.3 PyCharm的简介与安装 23
1.3.4 设置PyCharm工程环境 25
习题 28
第 2章 使用NumPy进行数据
计算 29
2.1 安装NumPy 29
2.2 NumPy中的数组对象 30
2.2.1 数组对象的创建 31
2.2.2 数组对象的常用属性 34
2.2.3 数组元素的访问与修改 36
2.2.4 数组对象的基础运算 37
2.2.5 数组对象的常用函数 38
2.3 使用NumPy进行数学运算 42
2.3.1 位运算函数 42
2.3.2 数学函数 44
2.3.3 算术函数 45
2.3.4 统计函数 47
2.3.5 线性代数函数 49
2.4 NumPy使用案例 52
习题 53
第3章 使用pandas进行数据分析 54
3.1 安装pandas 54
3.2 pandas中的对象 55
3.2.1 Series对象 56
3.2.2 DataFrame对象 57
3.3 pandas的基本操作 58
3.3.1 导入与导出数据 59
3.3.2 数据的查看与检查 60
3.3.3 数据的增删查改 62
3.4 pandas的基本运用 64
3.4.1 数据统计 64
3.4.2 算术运算与数据对齐 66
3.5 pandas使用案例 68
习题 70
第4章 Matplotlib数据
可视化 71
4.1 安装Matplotlib与绘图基本步骤 71
4.1.1 安装Matplotlib 71
4.1.2 Matplotlib绘图基本步骤 72
4.2 经典图形绘制 74
4.2.1 折线图 74
4.2.2 柱状图 77
4.2.3 直方图 80
4.2.4 散点图 82
4.2.5 等值线图及地理信息可视化 86
4.3 图表调整及美化 92
4.3.1 图表主要组成元素调整 92
4.3.2 颜色参数及映射表 97
4.4 Matplotlib使用案例 98
习题 102
第5章 数据预处理 103
5.1 数据清洗与准备 103
5.1.1 数据清洗准备 103
5.1.2 数据清洗 104
5.2 正则表达式 108
5.2.1 正则表达式的特点与组成 108
5.2.2 字符串方法 109
5.2.3 re模块 113
5.3 数据规整 117
5.3.1 聚合、分组及数据透视 117
5.3.2 特征选择(降维) 120
5.3.3 数据变换与数据规约 122
5.3.4 稀疏表示和字典学习 124
习题 126
第二部分 实例篇
第6章 基于大数据的房产估价 128
6.1 情景问题提出及分析 128
6.2 多元回归模型介绍 128
6.3 方法与过程 129
6.3.1 读入数据并进行数据预处理 130
6.3.2 将预处理好的数据可视化 141
6.3.3 使用多元回归模型进行房产估价 146
6.3.4 模型效果评价 148
上机实验 151
第7章 某移动公司客户价值分析 152
7.1 情景问题提出及分析 152
7.2 K-Means聚类算法简介 153
7.3 客户价值分析过程 155
7.3.1 读入数据并进行数据预处理 156
7.3.2 数据标准化 165
7.3.3 使用K-Means聚类算法对客户进行分析 167
7.3.4 数据可视化及数据分析 172
上机实验 178
第8章 基于历史数据的气温及降水预测 179
8.1 情景问题提出及分析 179
8.2 常见的时间序列模型简介 180
8.2.1 AR模型 180
8.2.2 MA模型 181
8.2.3 ARMA模型 181
8.2.4 ARIMA模型 182
8.2.5 模型求解步骤 183
8.3 平稳序列建模示例(降水预测) 186
8.3.1 读入数据并进行预处理 186
8.3.2 时间序列的平稳性分析 190
8.3.3 模型选择及定阶 191
8.3.4 建立时序模型并预测 193
8.4 非平稳序列建模示例(气温预测) 195
8.4.1 读入数据并进行预处理 195
8.4.2 时间序列的平稳性分析 197
8.4.3 模型选择及定阶 198
8.4.4 建立时序模型并预测 200
上机实验 202
第9章 智能电网的电能预估及价值分析 203
9.1 情景问题提出及分析 203
9.2 决策树算法简介 203
9.2.1 ID3算法 205
9.2.2 C4.5算法 207
9.2.3 CART算法 208
9.2.4 预剪枝与后剪枝 208
9.2.5 连续值处理 209
9.3 方法与过程 211
9.3.1 读入数据并预处理 211
9.3.2 模型构建 218
9.3.3 模型效果评价 221
上机实验 221
参考文献 223