当前位置: 首页 > news >正文

Python 数据挖掘之数据探索

        在数据挖掘的流程中,数据探索是非常关键的第一步,它能帮助我们深入了解数据的特点,为后续的预处理和模型构建打下坚实的基础。我们主要围绕四个方面展开:数据对象与特征、数据统计描述、数据可视化以及相关性和相似性度量。

一、数据对象与特征

首先,我们来认识一下数据对象和特征。数据集可以看作是由数据对象构成的集合,一个数据对象代表一个实体,它还有很多其他的称呼,比如记录、样本、实例等。而数据对象通常是由一组特征来描述的,这些特征刻画了对象的基本属性。

在数据库中,一行数据就对应一个数据对象,也被称为 “元组”,一列则对应一个特征。比如大家看这个包含销售记录的样本数据集,每一行是一个客户的购买记录,也就是一个数据对象,而客户 ID、购买日期、购买金额、购买商品 ID 这些就是描述这个对象的特征。

1. 特征及其类型

数据对象的特征可以用多种类型的数据来描述,我们把特征主要分为 5 种类型:标称特征、二元特征、序数特征、区间标度特征和比率标度特征。

标称特征是用于区分不同类别的标签,比如颜色、职业等,它的值没有顺序和大小之分。二元特征是一种特殊的标称特征,只能取两个值,比如性别中的男和女、是否购买等。序数特征的值有明确的顺序关系,但相邻值之间的差距不一定相等,比如成绩等级中的优、良、中、差。区间标度特征的值之间的差距是有意义的,但没有绝对零点,比如温度。比率标度特征不仅有差距意义,还有绝对零点,比如身高、体重等。

2. 离散和连续特征

从特征的取值数量角度,我们还可以把特征分为离散特征和连续特征。

离散特征在一定区间内有有限个取值,可以用整数、符号、布尔值等表示。像标称特征、二元特征、序数特征和整数数值特征通常都是离散特征,比如职工人数、设备台数、性别等。

连续特征则可以在一定区间内任意取值,有无限个取值,区间标度特征和比率标度特征一般属于连续特征,比如生产零件的规格尺寸、人体的身高体重等。

二、数据统计描述

数据统计描述是通过计算一些统计度量指标来帮助我们认识数据,了解数据的分布特点,它通常包括集中趋势和离中趋势两类度量指标。

1. 集中趋势

集中趋势反映的是数据集中分布的中心位置。

首先是均值,也就是算术平均数,它是所有数据的总和除以数据的个数,能反映数据的平均水平。但均值容易受到极端值的影响。

然后是中位数,对于偏度较大的数据,中位数是更好的集中趋势度量指标。它是将数据排序后位于中间位置的那个值,如果数据个数是奇数,中间的那个值就是中位数;如果是偶数,通常取中间两个值的平均值。

众数则是在离散型特征中出现频数最高的值,只对离散特征有意义。有时候可能会出现多个众数,这样的数据被称为多峰数据。比如一组学生成绩中,85 分出现的次数最多,那 85 就是众数。

2. 离中趋势

离中趋势反映的是数据的离散程度。

极差是最简单的离中趋势指标,是数据中的最大值减去最小值,它能反映数据的波动范围,但只考虑了两个极端值,不够全面。

方差和标准差也是常用的指标。方差是每个数据与均值的差的平方的平均值,标准差是方差的平方根,它们都能反映数据的离散程度,值越大说明数据越分散。

四分位极差是上四分位数与下四分位数的差。四分位数是将数据排序后,把数据分成 4 等份的 3 个点,分别是 25% 位置的下四分位数(Q1)、50% 位置的中位数(Q2)和 75% 位置的上四分位数(Q3)。四分位极差能反映中间 50% 数据的离散程度,受极端值影响较小。

三、数据可视化

在数据挖掘中,利用图形工具对数据进行可视化,能让我们直观地观察数据的分布规律、特征之间的关系以及异常值等情况。

1. 散点图

散点图是将数据点绘制在二维或三维坐标系中,通过数据点的散布情况来观察数据的分布或特征之间的相关关系。

我们可以用 Matplotlib 模块中的 scatter () 函数来绘制散点图。两个特征之间的相关性有多种情况,比如完全线性正相关、完全线性负相关、线性正相关、线性负相关、线性无关和非线性相关等。从散点图中,我们能很直观地看出这些关系。

2. 箱线图

箱线图也称盒图,主要用来展现数据的分布,包括上四分位数、下四分位数、中位数等,还能反映数据的异常情况。箱线图通过绘制数据的五数概括(最小值、下四分位数、中位数、上四分位数、最大值)来展示数据的分布特征,超出一定范围的数据点可能被视为异常值。

3. 频率直方图

频率直方图由一系列高度不等的纵向条纹组成,横轴表示数据类型,纵轴表示分布情况,它能直观地展示数据的频率分布,让我们了解数据在不同区间的分布密度。

4. 柱状图

柱状图以长方形的长度为变量,用高度不等的纵向条纹来表示数据大小,主要用于比较两个或以上的变量。它也可以横向排列,或者用多维方式表达。比如这个展示三个品种鸢尾花数量的柱状图,能很清楚地看出不同品种数量的差异。

5. 饼图

饼图是一个划分为几个扇形的圆形统计图,用于描述数量、频率或百分比之间的相对关系。每个扇区的弧长大小代表其所表示的数量的比例,所有扇区合起来是一个完整的圆。比如这个展示三个品种鸢尾花所占比例的饼图,每个品种占比 33.3%。

6. 散点图矩阵

散点图矩阵和简单散点图不同,它可以同时展示多个特征的分布情况以及两两特征之间的关系,能帮助我们更全面地了解特征之间的关联。

四、相关性和相似性度量

在数据探索中,有两项重要工作:一是观察特征之间是否存在相关性,判断是否有冗余特征,以及特征和目标变量的相关性,为特征工程提供依据;二是计算数据之间的相似性,这是很多数据挖掘模型的基础。

1. 数据相关性度量

相关性是衡量不同特征之间相关关系的指标,常用的有协方差、皮尔逊相关系数、斯皮尔曼相关系数、肯德尔相关系数等。

皮尔逊相关系数用于衡量两个连续变量之间的线性相关性程度,它是两个变量协方差与标准差乘积的商,取值范围在 - 1 到 1 之间,绝对值越接近 1,线性相关性越强。

斯皮尔曼相关系数主要用于描述分类或等级变量之间、分类或等级变量与连续变量之间的关系,它通过关注两个变量的秩次大小来计算相关性。

肯德尔相关系数也是一种秩相关系数,用于度量两个等级变量的相关程度或单调关系强弱,它通过计算一致对和分歧对之差与总对数的比值得到。

2. 数据相似性度量

相似性是度量数据对象之间相似程度的方法,是聚类、推荐等模型的核心概念。不同类型的数据有不同的相似性度量指标。

杰卡德相似系数适用于二元特征,它是两个集合交集的大小与并集大小的比值。

余弦相似度常用于文档数据,它通过计算两个向量的夹角余弦值来衡量它们的相似性。

对于数值特征,常用的距离度量有欧式距离,也就是两点之间的直线距离;曼哈顿距离,类似城市中两点之间的直角边距离;还有马氏距离、切比雪夫距离等。

http://www.lryc.cn/news/587247.html

相关文章:

  • 鸿蒙选择本地视频文件,并获取首帧预览图
  • 【算法】贪心算法:柠檬水找零C++
  • 密码学系列文(1)--密码学基础概念详解
  • 密码学系列文(2)--流密码
  • ansible自动化部署考试系统前后端分离项目
  • 在 C# 中调用 Python 脚本:实现跨语言功能集成
  • MySQL逻辑删除与唯一索引冲突解决
  • C++高频知识点(九)
  • 39.Sentinel微服务流量控制组件
  • 【一起来学AI大模型】部署优化推理加速:vLLM
  • word中多行合一功能实现
  • comfyUI-ControlNet-姿势控制深度控制
  • Java 8 LocalDate 日期操作全攻略
  • CS课程项目设计1:交互友好的井字棋游戏
  • 【多线程】 线程池设多大才合理?CPU 密集型和 I/O 密集型的终极公式
  • 深度学习图像分类数据集—七种树叶识别分类
  • AI生成单词消消乐游戏. HTML代码
  • LeetCode 2401.最长优雅子数组
  • Ampace厦门新能安科技Verify 测评演绎数字推理及四色测评考点分析、SHL真题题库
  • 【sql学习之拉链表】
  • 系规备考论文:论IT服务知识管理
  • MyBatis框架进阶指南:深入理解CRUD与参数映射
  • CVE-2022-0609
  • Oracle SQL - 使用行转列PIVOT减少表重复扫描(实例)
  • 常用的docker命令备份
  • Docker从环境配置到应用上云的极简路径
  • 《Google 软件工程》:如何写好文档?
  • Qt窗口:QToolBar、QStatusBar、QDockWidget、QDialog
  • QT 多线程 管理串口
  • Vue框架之计算属性与侦听器详解