1、5.3 数据的分析 l数据分析就是在一大批数据分析就是在一大批 杂乱无章的数据中,运用数字化工具和技杂乱无章的数据中,运用数字化工具和技 术,探索数据内在的结构和规律,构建数学模型,并进行可视化表术,探索数据内在的结构和规律,构建数学模型,并进行可视化表 达,通过验证将模型转化为知识,为诊断过去、预测未来发挥作用。达,通过验证将模型转化为知识,为诊断过去、预测未来发挥作用。 数据分析一般包括特征探索、数据分析一般包括特征探索、 关联分析、聚类与分类、建立模型关联分析、聚类与分类、建立模型 和模型评价等。和模型评价等。 5.3.1 特征探索 l数据特征探索的主要任务是对数据进行预处理,发现和处理
2、缺失值,数据特征探索的主要任务是对数据进行预处理,发现和处理缺失值, 异常数据,绘制直方图,观察分析数据的分布特征,求最大值、最异常数据,绘制直方图,观察分析数据的分布特征,求最大值、最 小值、极差等描述性统计量。小值、极差等描述性统计量。 l探究活动探究活动 打开并运行配套学习资源包“第 五章课本素材程序5-3数据预处 理”,观察数据预处理结果。程 序5-3数据预处理的关键过程及部 分程序段如下:(1)数据清洗,发 现缺失值。 (2)异常值处理中,利用画散点图发现异常值部分。 (3)求最大值和最小值。 (4)求极差 (5)求组距。 (6)绘制价格直方图。 (7)绘制评论数直方图。 5.3.2
3、 关联分析 l关联分析就是分析并发现存在于大量数据之间的关联性或相关性,关联分析就是分析并发现存在于大量数据之间的关联性或相关性, 从而描述一个事物中某些属性同时出现的规律和模式。关联分析的从而描述一个事物中某些属性同时出现的规律和模式。关联分析的 基本算法如下基本算法如下: : l(1)(1)扫描历史数据,并对每项数据进行频率次数统计。扫描历史数据,并对每项数据进行频率次数统计。 l(2)(2)构建候选项集构建候选项集C1C1,并计算其支持度,即数据出现顿事次数与总,并计算其支持度,即数据出现顿事次数与总 数的比。数的比。 l(3)(3)对候选项集的支持度进行筛选,筛选的数据项支持度应当不小
4、对候选项集的支持度进行筛选,筛选的数据项支持度应当不小 于最小支持度。从而形成顿繁项集么于最小支持度。从而形成顿繁项集么L1L1。 l(4) (4) 对频繁项集对频繁项集L2L2进行连接生成候选项集进行连接生成候选项集C2.C2.重复上述步骤,最终重复上述步骤,最终 形成频繁人项集或者最大频繁项集。形成频繁人项集或者最大频繁项集。 l观察观察 打开并运行教科书配套学习资源包“第五章课本素村程序5-4关联分析”,观察程序的运行结果。程序 5-4关联分析的关键过程及程序段如下: (1)自定又连接函教,用于实现L_k-1到C_k的连接。 (2)寻找关联规则。 ( 3)创建连接数据。 (4)遍历可能的
5、推理。 (5)计算置信度序列。 (6)置信度师选。 5.3.3 聚类分析 l聚类分析是一种探索性的分析,聚类分析是一种探索性的分析, 在分类的过程中,人们不必事先给出一个分在分类的过程中,人们不必事先给出一个分 类的标准,聚类分析能够从样本数据出发,自动进行分类。聚类分析的算法有类的标准,聚类分析能够从样本数据出发,自动进行分类。聚类分析的算法有 很多,其中很多,其中K K平均平均(K-Means )(K-Means )算法是一种经典的白下而算法是一种经典的白下而 上的聚类分析方法。上的聚类分析方法。K- K- 平均算法的基本思想就是在空间平均算法的基本思想就是在空间N N个点中,初始选择个点
6、中,初始选择K K个点作为中心聚类点,然个点作为中心聚类点,然 后将后将N N个点分别与个点分别与K K个点计算距离,选择自己最近的点作为自己的中心点,再不个点计算距离,选择自己最近的点作为自己的中心点,再不 断更新中心聚集点,以达到断更新中心聚集点,以达到“物以类聚,人以群分物以类聚,人以群分”的效果,如图的效果,如图5- 105- 10所示。所示。 l聚类分析的基本算法如下聚类分析的基本算法如下: : l(1)(1)从数据点集合中随机选择从数据点集合中随机选择K K个点作为初始的聚集中心,每个中心个点作为初始的聚集中心,每个中心 点代表着每个聚集中心的平均值。点代表着每个聚集中心的平均值。
7、 l(2) (2) 对其余的每个数据点,依次判断其与对其余的每个数据点,依次判断其与K K个中心点的距离,个中心点的距离, 距离距离 最近的表明它属于这项聚类。最近的表明它属于这项聚类。 l(3)(3)重新计算新的聚族集合的平均值即中心点。整个过程不断这代重新计算新的聚族集合的平均值即中心点。整个过程不断这代 计算,直到达到预先设定的造代次数或中心点不再顿繁波动。计算,直到达到预先设定的造代次数或中心点不再顿繁波动。 l实践实践 打开并运行教科书配套学习资源包“第五章课本素材程序5-5聚类分析”文件,观察程序的运行结果。 程序5-5直接调用了Python语言的sklearn机器学习模块,其对数
8、据进行聚类分析的关键程序段如下: 5.3.4 数据分类 l数据分类是数据分析处理中最基本的方法。数据分类通常的做法是,数据分类是数据分析处理中最基本的方法。数据分类通常的做法是, 基于样本数据先训练构建分类函数或者分类模型基于样本数据先训练构建分类函数或者分类模型( (也称为分类器也称为分类器) ), 该分类器具有将待分类数据项映射到某一特点类别的功能。数据分该分类器具有将待分类数据项映射到某一特点类别的功能。数据分 类和回归分析都可用于预测,预测是指从基于样本数据记录,根据类和回归分析都可用于预测,预测是指从基于样本数据记录,根据 分类准则自动给出对未知数据的推广描述,从而实现对未知数据进分
9、类准则自动给出对未知数据的推广描述,从而实现对未知数据进 行预测。行预测。 l贝叶斯分类技术在众多分类技术中占有重要地位,贝叶斯分类技术在众多分类技术中占有重要地位, 也属于统计学也属于统计学 分类的范畴,是一种非规则的分类方法。贝叶斯分类技术通过对已分类的范畴,是一种非规则的分类方法。贝叶斯分类技术通过对已 分类的样本子集进行训练,学习归结出分类函数分类的样本子集进行训练,学习归结出分类函数( (对离散变量的预对离散变量的预 测称作分类,对连续变量的分类称为回归测称作分类,对连续变量的分类称为回归) ),利用调练得到的分类,利用调练得到的分类 器实现对未分类数据的分类。器实现对未分类数据的分
10、类。 l问题问题 如表5-4所示是某网络商城 客户购物行为特征的一组统 计资料。已知某客户购物行 为特征A为数值182.8,特征 B为数值58.9,特征C为数值 26,请问这人是重要客户还 是普通客户? 根据表5-4的资料,得到一个已分类的样本集: X=182.8,81.6,30,180.4,86.1,29,170.0,77.1,30,180.4,74.8,28,152.4,45.3,24,167.6,68. 0,26,165.2,58.9,25,175.2,68.0.27和Y=1,1,1,1,0,0,0,0 ( 1代表重要客户,0代表普通客户)。 打开教科书配套学习资源包“第五章课本素材程序
11、5-6”文件,把已分类的样本子集(X,Y )和测试样本 182.8,58.9,26输入到程序5-6中,具体(高斯朴素贝叶斯)如下: 运行程序5-6后,得到结果为:0。由此可以判断这人为普通客户。 程序5-6使用语句from sklearn.naive_bayes import GaussianNB调用了sklearn.naive_bayes模块,使得 程序简单明了。 l拓展拓展: :贝叶斯与概率分类贝叶斯与概率分类 贝叶斯( Thomas Bayes,17011761),英国数学家,发明了概率统计学原理,将归纳推理法用于概率论 基础理论,创立了贝叶斯统计理论,对统计决策函数、统计推断、统计的估
12、算等做出了贡献。 在概率统计理论中,条件概率是指事件A在另外一个事件B已经发生条件下的发生概率,表示为P(A |B), 读作“在B的条件下A的概率”。贝叶斯发现在事件B出现的前提下事件A出现的概率,等于事件A出现的前 提下事件B出现的概率乘以事件A出现的概率再除以事件B出现的概率。这就是著名的贝叶斯定理。具体计 算公式为: 运用贝叶斯定理对事物进行分类,是一种非常有效的思维方法,是贝叶斯决策理论方法的基本思想。例如, 假设有一个数据集,由两类组成,且已知每个样本的分类,数据分布如图5-11所示。用p,(x,y)表示数据 点(x,y)属于红色一类的概率,用pa(x,y)表示数据点(x,y)属于蓝
13、色一类的概率。 那么如何判断对于一个新的点C(x,y)属于红色还是蓝色类别呢?通常人们会按以下步骤解答这个问题: ( 1)求新的点C(x,y)属于红色一类的概率p;(x,y)。 (2)求新的点C(x,y)属于蓝色一类的概率pz(x,y)。 (3)选择概率高的一类作为新点C(x,y)的分类。即如果p;(x,y)pz(x,y),则C(x,y)为红色一类;如果 p(x,y)p2(x,y),则C(x,y)为蓝色一类。 同样,若有多个分类,而要求新点属于哪一类,只需求出新点在所有类别中概率最大的一类。这就是贝叶 斯决策理论的核心思想,即选择具有最高概率的决策。 l项目实施项目实施 各小组根据项目选题及拟订的项目方案,结合本节所学知识,完成相应的数据分析。 1采用适当的方法完成相应项目选题的数据分析工作。 2总结和归纳数据分析的方法和步骤。