Python数据分析与应用目录
- 第1章 Python数据分析概况
- 第1章 课后习题答案
- 第2章 NumPy数值计算基础
- 第2章 课后习题答案
- 第3章 Matplotlib 数据可视化基础
- 第3章 课后习题答案
- 第4章 pandas统计分析基础
- 第4章 课后习题答案
- 第5章 使用pandas进行数据预处理
- 第5章 课后习题
- 第6章 使用sklearn构建模型
- 第6章 课后习题
- 第7章 航空公司客户价值分析-分类
- 第8章 财政收入预测分析-回归
- 第9章 家用热水器用户行为分析与事件识别-BP神经网络
第1章 Python数据分析概况
1.1 认识数据分析
1.2 熟悉Python数据分析的工具
1.3 Jupyter Notebook 快捷键
第1章 课后习题答案
第一章
(1)下列关于数据和数据分析的说法正确的是(B)。
A.数据就是数据库中的表格
B.文字、声音、图像这些都是数据
C.数据分析不可能预测未来几天的天气变化
D.数据分析的数据只能是结构化的
(2)下列关于数据分析流程的说法错误的是(C)。
A.需求分析是数据分析最重要的一部分||
B.数据预处理是能够建模的前提||
C.分析与建模时只能够使用数值型数据||
D.模型评价能够评价模型的优劣||
(3)下列关于分析与建模流程的说法错误的是( D)。
A.传统的统计对比分析不属于分析与建模流程
B.分析与建模的模型选择要根据需求确定
C.分析与建模时可以选择多个模型,同时分析
D.分析与建模工作是数据分析的核心
(4)下列关于模型评价与优化的说法正确的是(B)。
A.模型构建完成就可以使用
B.模型评价的目的是为了确认模型的有效性
C.模型评价结果良好,模型一定可用,不需要重构
D.所有的模型评价方法相同
(5)下列不属于数据分析应用场景的是(D)。
A.产品销量分析
B.码头货物吞吐量预测
C.计算机硬盘使用寿命预测
D.某人一生的命运预测
(6)下列不属于Python优势的是(C)。
A.语法简洁,程序开发速度快
B.拥有大量的第三方库,能够调用C、C++、Java语言
C.程序的运行速度在所有计算机语言中最快
D.开源免费
(7)Jupyter Notebook不具备的功能是(B)。
A.Jupyter Notebook可以直接生成一份交互式文档
B.Jupyter Notebook可以安装Python库
C.Jupyter Notebook可以导出HTML文件
D.Jupyter Notebook可以将文件分享给他人
(8)【多选】下列关于Jupyter Notebook的描述错误的是(BCD)。
A.Jupyter Notebook有两种模式
B.Jupyter Notebook有两种单元形式
C.Jupyter Notebook Markdown无法使用LaTeX语法
D.Jupyter Notebook 仅仅支持Python语言
(9)【多选】下列关于Python数据分析库的描述错误的是(ABD)。
A.NumPy的在线安装不需要其他任何辅助工具
B.SciPy的主要功能是可视化图表
C.pandas能够实现数据的整理工作
D.scikit-learn包含所有算法
(10)【多选】下列属于Anaconda主要特点的是(ABC)。
A.包含了众多流行的科学、数学、工程、数据分析的Python包
B.完全开源和免费
C.支持Python 2.6、2.7、3.4、3.5、3.6,可自由切换
D.额外的加速和优化是免费的
2.操作题
(1)在自用计算机上完成Python Anaconda发行版安装。
(2)使用Jupyter Notebook创建一个Hello World程序,并导出为HTML文件。
print(‘Hello, World’)
第2章 NumPy数值计算基础
2.1 掌握NumPy数组对象ndarray
2.2.1 创建数组对象
2.1.2 生成随机数
2.1.3 通过索引访问数组
2.2 掌握 NumPy 矩阵与通用函数
2.3 利用NumPy进行统计分析
2.3.1 读/写文件
1、二进制的文件读写
2、读取文本格式的数据
2.3.2 使用数组进行简单统计分析
1、排序
2、去重与重复数据
3、常用的统计函数
第2章 课后习题答案
第2章 NumPy数值计算基础
1.选择题
(1)【多选】NumPy提供的两种基本对象是(BC)。
A.array
B.ndarray
C.ufunc
D.matrix
(2)下列不属于数组属性的是(D)。
A.ndim
B.shape
C.size
D.add
(3)以下最能体现ufunc函数特点的是(C)。
A.又叫通用函数
B.对数组里的每一个元素逐一操作
C.对整个数组进行操作
D.数组里的元素都是相同类型的
(4)【多选】下面描述属于广播机制的是(ABCD)。
A.让所有的输入数组都向其中shape最长的数组看齐,shape中不足的部分通过在前面加1补齐
B.输出数组的shape是输入数组shape的各个轴上的最大值
C.如果输入数组的某个轴和输出数组的对应轴的长度相同或者其长度为1,则这个数组能够用来计算,否则出错
D.当输入数组的某个轴的长度为1时,沿着此轴运算时都用此轴上的第一组值
(5)创建一个3×3的数组,下列代码中错误的是(C)。
A.np.arange(0,9).reshape(3,3)
B.np.eye(3)
C.np.random.random([3,3,3])
D.np.mat(“1 2 3;4 5 6;7 8 9”)
2.操作题
(1)生成范围在0~1、服从均匀分布的10行5列的数组。
import numpy as np
arr = np.random.rand(10,5)
arr
(2)生成两个2×2矩阵,并计算矩阵乘积。
import numpy as np
matr1 = np.mat("2 3; 4 5")
matr1
matr2 = np.mat("5 6; 7 8")
matr2
matr1 * matr2
第3章 Matplotlib 数据可视化基础
3.1 掌握绘图基础语法与常用参数
3.1.1 掌握pyplot基础语法
3.1.2 设置pyplot的动态rc参数
3.2 分析特征间的关系
3.2.1 绘制散点图 scatter()
例子1:绘制2000-2017年各季度国民生产总值散点图
例子2:使用不同颜色不同形状的点,绘制2000-2017年各产业各季度国民生产总值散点图
3.2.2 绘制折线图 plot()
例子1:绘制2000-2017年各季度国民生产总值折线图
例子2:使用不同颜色不同形状的点,绘制2000-2017年各产业各季度国民生产总值折线图
3.2.3 任务实现
3.3 分析特征内部数据分布与分散状况
3.3.1 绘制直方图 bar()
3.3.2 绘制饼图 pie()
3.3.3 绘制箱线图 boxplot()
3.3.4 任务实现
第3章 课后习题答案
第3章 Matplotlib数据可视化基础
1.选择题
(1)以下关于绘图标准流程说法错误的是( B)。
A.绘制最简单的图形可以不用创建画布
B.添加图例可以在绘制图形之前
C.添加x轴、y轴的标签可以在绘制图形之前
D.修改x轴标签、y轴标签和绘制图形没有先后
(2)下列参数中调整后显示中文的是( C)。
A.lines.linestyle
B.lines.linewidth
C.font.sans-serif
D.axes.unicode_minus
(3)下列代码中绘制散点图的是( A)。
A.plt.scatter(x,y )
B.plt.plot(x,y )
C.plt.legend(‘upper left’)
D.plt.xlabel(‘散点图’)
(4)下列字符串表示 plot 线条颜色、点的形状和类型为红色五角星点短虚线的是( D)。
A.‘bs-’
B.‘go-.’
C.‘r±.’
D.‘r*:’
(5)下列说法正确的是( C)。
A.散点图不能在子图中绘制
B.散点图的x轴刻度必须为数值
C.折线图可以用作查看特征间的趋势关系
D.箱线图可以用来查看特征间的相关关系
2.操作题
(1)读取鸢尾花数据集,使用循环和子图绘制各个特征之间的散点图。
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
iris = np.load