全书共分为10章,第1-2章介绍了数据科学的基础知识以及数据科学所需的各项技术;第3-5章涵盖了Python的语法基础,函数、模块与组合数据类型,文件读写;第6章介绍了网络爬虫的数据采集及方法;第7-8章重点介绍了数据分析过程中的两个重要模块:numpy和pandas;第9章介绍了数据可视化与应用;第10章结合之前的内容,以一个综合案例进行了实战分析。本书配有电子课件、电子教案、教学大纲、习题答案、模拟试卷及答案等教学和学习资料,索取方式参见书末的“更新勘误表和配套资料索取示意图”。
(1)边学边练,百余程序实例贯穿全书 (2)配套慕课,链接见人邮教育社区本书页面 (3)提供课件、教案、答案、模拟试卷、实训资料、源代码等 (4)从零起步、定位明确,适合工商管理、经济学、电子商务等经济管理类专业作为数据科学与Python语言入门的教材,可让毫无编程基础的读者快速了解数据分析的完整过程,并初步掌握Python这门程序设计语言的基本语法。
谢健民,管理科学博士,西南科技大学经济管理学院副教授、硕士生导师,四川信息管理与服务中心主任。主要研究领括数据科学与大数据、工商管理、应急物流、多目标决策等。在国内外核心学术期刊和管理杂志上发表了数十篇学术论文,出版了《Excel数据分析》《电子商务概论》等多部著作。
第 1章 数据科学概述 1
【知识目标】 1
【本章导读】 1
1.1 数据 1
1.1.1 数据的定义和分类 1
1.1.2 数据产生方式的变革 2
1.2 数据科学 3
1.2.1 数据科学的发展历程 4
1.2.2 数据科学基础 5
1.2.3 数据科学的知识结构 8
1.2.4 数据科学的工作流程 8
1.2.5 数据科学的成果 11
1.2.6 数据科学与大数据 11
1.3 数据科学管理与应用 12
1.3.1 运筹优化 12
1.3.2 管理决策 12
1.3.3 质量控制 13
1.3.4 商务智能 13
1.3.5 网络管理 14
归纳与提高 14
知识巩固与训练 15
第 2章 数据科学关键技术分析 17
【知识目标】 17
【本章导读】 17
2.1 数据采集技术 17
2.1.1 数据采集 17
2.1.2 数据采集相关技术 19
2.2 数据预处理技术 20
2.2.1 数据清洗 20
2.2.2 数据集成 22
2.3 数据分析技术 23
2.3.1 数据分析概述 23
2.3.2 数据分析的相关技术 24
2.4 数据可视化技术 25
2.4.1 数据可视化概述 26
2.4.2 数据可视化的相关技术 26
归纳与提高 27
知识巩固与训练 27
第3章 Python基础 29
【知识目标】 29
【本章导读】 29
3.1 Python简介 29
3.1.1 Python语言概述 29
3.1.2 Python语言的优点和缺点 30
3.2 Python程序的开发与基本语法 31
3.2.1 程序开发的流程 31
3.2.2 程序编写的基本方法 32
3.2.3 Python的输入与输出 32
3.2.4 Python的基本语法 34
3.2.5 变量与常量 35
3.2.6 标识符 37
3.3 Python的基本数据类型 38
3.3.1 数字类型 38
3.3.2 字符串类型 39
3.3.3 布尔类型 41
3.4 运算符与表达式 42
3.4.1 运算符 42
3.4.2 表达式 44
3.4.3 数据类型转换 45
3.5 程序的控制结构 46
3.5.1 程序流程图 46
3.5.2 程序的基本结构 47
3.5.3 分支结构 49
3.5.4 循环结构 51
归纳与提高 54
知识巩固与训练 54
第4章 函数、模块与组合数据类型 57
【知识目标】 57
【本章导读】 57
4.1 函数的定义和调用 57
4.1.1 函数的定义 57
4.1.2 函数的调用 58
4.1.3 函数的递归调用 59
4.1.4 lambda表达式 60
4.2 函数的参数传递 61
4.2.1 函数值传递和引用传递 61
4.2.2 参数的位置传递 62
4.2.3 参数的关键字传递 64
4.2.4 参数的默认值传递 64
4.3 内置函数 65
4.4 变量作用域 67
4.4.1 Python的局部变量 67
4.4.2 Python的全局变量 68
4.5 模块 69
4.5.1 模块的定义 69
4.5.2 导入模块 69
4.5.3 自定义模块 70
4.5.4 math模块 71
4.6 组合数据类型与字符串 72
4.6.1 列表 73
4.6.2 元组 76
4.6.3 字典 78
4.6.4 集合 82
4.6.5 字符串 84
归纳与提高 88
知识巩固与训练 88
第5章 文件操作 92
【知识目标】 92
【本章导读】 92
5.1 错误处理 92
5.1.1 错误 92
5.1.2 异常处理 94
5.2 文件读写 96
5.2.1 读写文本文件 96
5.2.2 读写csv文件 98
5.2.3 读写JSON文件 100
归纳与提高 101
知识巩固与训练 102
第6章 数据采集 104
【知识目标】 104
【本章导读】 104
6.1 HTTP请求概述 104
6.1.1 HTTP和HTTPS 104
6.1.2 HTTP的工作原理 105
6.1.3 HTTP的请求与响应 105
6.2 HTML、DOM树结构和XPath 109
6.2.1 HTML简述 109
6.2.2 DOM树结构 110
6.2.3 用XPath选择HTML元素 110
6.3 Scrapy数据采集入门 113
6.3.1 安装Scrapy 113
6.3.2 Scrapy框架结构 114
6.3.3 基础Spider源码解析 115
6.4 Scrapy实例 117
6.4.1 实例一 117
6.4.2 实例二 123
6.5 Scrapy应对反爬虫程序 127
6.5.1 爬虫的检测方法 127
6.5.2 应对反爬虫的对策 128
6.5.3 反爬虫实例 128
归纳与提高 130
知识巩固与训练 131
第7章 numpy数值计算 132
【知识目标】 132
【本章导读】 132
7.1 numpy数组概述 132
7.1.1 numpy数组的特点及属性 132
7.1.2 创建numpy数组 134
7.1.3 numpy的数据类型及其转换 135
7.2 数组形状操作 136
7.2.1 利用reshape()函数改变数组维度 136
7.2.2 利用ravel()函数数组 137
7.2.3 利用flatten()函数横向或纵向数组 137
7.2.4 利用hstack()、vstack()、concatenate()函行数组组合 137
7.2.5 利用hsplit()、vsplit()和split()函行数组分割 138
7.3 数组数据获取:索引、切片、及条件 139
7.3.1 一维数组的索引及切片 139
7.3.2 多维数组的索引及切片 140
7.3.3 数组数据的 140
7.3.4 利用条件获取数组数据 140
7.4 数组运算 141
7.4.1 常用的ufunc函数运算 141
7.4.2 ufunc函数的广播机制 143
7.5 数组排序及统计分析 144
7.5.1 排序 144
7.5.2 去重与重复数据 145
7.5.3 常用的统计函数 146
7.6 矩阵创建及运算 147
7.6.1 创建矩阵 147
7.6.2 矩阵的基本运算 148
7.6.3 矩阵的转置、共轭及逆矩阵 149
7.6.4 查看矩阵特征 149
7.7 读写文件 150
7.7.1 文本数据读写函数savetxt()、loadtxt()、genfromtxt() 150
7.7.2 制文件读写函数save()及load() 151
归纳与提高 152
知识巩固与训练 152
第8章 数据处理:pandas统计分析 154
【知识目标】 154
【本章导读】 154
8.1 pandas的数据结构 154
8.1.1 Series(数据序列) 155
8.1.2 DataFrame(数据框) 157
8.2 DataFrame的基础操作 158
8.2.1 查看DataFrame的常用属性 158
8.2.2 查看和修改DataFrame数据 159
8.3 读/写外部数据 164
8.3.1 读/写数据库数据 164
8.3.2 读/写文本文件 166
8.3.3 读/写Excel文件 167
8.4 pandas的数据预处理 168
8.4.1 数据清洗 168
8.4.2 数据集成 173
8.4.3 数据排序 177
8.5 统计分析 178
8.5.1 描述性78
8.5.2 分组聚合80
8.6 时间类型及时间序列数据 182
8.6.1 转换字符串时间为标准时间 182
8.6.2 提取时间数据信息 183
8.6.3 加减时间数据 184
8.6.4 生成时间序列数据 184
8.7 创建透视表与交叉表 185
8.7.1 使用pivot()及pivot_table()函数创建透视表 185
8.7.2 使用cros()函数创建交叉表 187
归纳与提高 189
知识巩固与训练 189
第9章 数据可视化与应用 192
【知识目标】 192
【本章导读】 192
9.1 matplotlib简介 192
9.2 基本图形绘制 194
9.2.1 绘制一个基本图形 194
9.2.2 绘制线形图 195
9.2.3 绘制散点图 197
9.3 统计图形绘制 198
9.3.1 绘制柱形图 198
9.3.2 绘制条形图 199
9.3.3 绘制饼图 200
9.3.4 绘制气泡图 200
9.4 设置样式 201
9.4.1 中文及负号设置 201
9.4.2 标题及坐标轴标签 201
9.4.3 plot样式 202
9.4.4 子图 203
9.5 3D图形的绘制 204
归纳与提高 206
知识巩固与训练 206
第 10章 网店商品数据分析 209
【知识目标】 209
【本章导读】 209
10.1 某网店的背景及数据分析的目的 209
10.1.1 某网店的背景介绍 209
10.1.2 数据分析目的及流程 210
10.2 数据预处理 210
10.2.1 数据特征分析 211
10.2.2 文字预处理 211
10.2.3 数字预处理 213
10.3 数据分析初步 214
10.3.1 商品分析 214
10.3.2 商品价格与销量分析 215
10.4 聚类分析 217
10.4.1 聚类分析简介 217
10.4.2 KMeans聚类 217
10.4.3 聚类过程及可视化 218
10.5 撰写数据分析报告 221
归纳与提高 222
更新勘误表和配套资料索取示意图 223
参考文献 224