数据仓库实验二:关联规则挖掘实验

目录

    • 一、实验目的
    • 二、实验内容和要求
    • 三、实验步骤
      • 1、创建数据库和表
      • 2、挖掘关联规则
        • (1)新建一个 Analysis Services 项目 Sales
        • (2)建立数据源视图
        • (3)建立挖掘结构 Sales.dmm
        • (4)部署关联规则挖掘项目并浏览结果
    • 四、实验结果分析
    • 五、实验总结体会


一、实验目的

  通过本实验,对利用 Apriori 和 FP-growth 算法发现频繁项集、构建关联规则的方法有准确的理解。并掌握利用 Sql Server 等工具平台进行关联规则挖掘的方法,掌握挖掘结构、挖掘模型的基本概念,能够使用数据挖掘向导创建数据挖掘结构和模型,掌握数据挖掘设计器的使用方法,掌握模型查看器方法 ,理解关联规则挖掘常用的参数含义和设置方法。

二、实验内容和要求

  针对实际需求,构建格式规范的数据集,并能够借助于 SQL Server、Weka、SPSS 等工具平台,利用 Apriori/FP-growth 算法,进行关联规则挖掘,正确分析实验结果,发现知识,完成实验报告。

三、实验步骤

以下以 Sql Server 作为工具,完成数据集的构建和关联规则的挖掘。

1、创建数据库和表

在 SSMS 中建立 Sales 数据库 (模拟超市/商场的销售数据),分别设计 Maintable (客户订单表)、Subtable (订单明细表)。表的结构和内容如下所示。

Maintable (客户订单表):

在这里插入图片描述
在这里插入图片描述
Subtable (订单明细表):

在这里插入图片描述
在这里插入图片描述

2、挖掘关联规则

在 Sql Server Data Tools 中采用如下步骤挖掘关联规则。

(1)新建一个 Analysis Services 项目 Sales

定义数据源 Sales.ds,对应的数据库为前面建立的 Sales 数据库。

在这里插入图片描述

(2)建立数据源视图

定义数据源视图 Sales.dsv,它包含 Maintable 和 Subtable 两个表,并建立两个人表之间的关系,如下所示。

定义数据源视图 Sales.dsv:

在这里插入图片描述
建立两个表之间的关系:

在这里插入图片描述
数据源视图如下:

在这里插入图片描述

(3)建立挖掘结构 Sales.dmm

新建挖掘结构,在 “创建数据挖掘结构” 页面的 “您要使用何种数据挖掘技术?” 选项下,选中列表中的 “Microsoft关联规则”。

在这里插入图片描述
为该数据源视图指定 Maintable 和 Subtable 两个表。

在这里插入图片描述
在 “指定表类型” 页面上,在 Maintable 表的对应行中选中 “事例” 复选框,在 Subtable 表的对应行中选中 “嵌套” 复选框。

在这里插入图片描述
在 “指定定型数据” 页面中,选中 MainTable 表订单编号字段所在行的 “键” 复选框。在 Subtable 表的产品名称字段勾选 “键”、“输入” 和 “可预测” 复选框。

在这里插入图片描述
在 “创建测试集” 页面上,“测试数据百分比” 选项的默认值为30%,将该选项更改为0.

在这里插入图片描述
在完成向导页面的 “挖掘结构名称” 和 “挖掘模型名称” 中,都输入 Sales,并且勾选 “允许钻取” 复选框。

在这里插入图片描述
结果如下图:

在这里插入图片描述
在这里插入图片描述
打开数据挖掘设计器的 “挖掘模型” 选项卡,右击 “Sales”,在出现的下拉菜单中选择 “设置算法参数” 命令,设置 “MINIMUM_PROBABLITY” 参数为0.5,设置 MINIMUM_SUPPORT 参数为0.2。

在这里插入图片描述
在这里插入图片描述

(4)部署关联规则挖掘项目并浏览结果

先处理(部署)、再浏览。

在这里插入图片描述
打开数据挖掘设计器的 “挖掘模型查看器” 选项卡,分别选择 “规则”、“项集” 和 “依赖关系网络” 选项并浏览。结果如下图所示。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、实验结果分析

1、选择“规则”选项并分析

在概率为1.0条件下,可以看到 草稿本→圆珠笔,圆珠笔→草稿本,牙膏→牙刷,牙刷→牙膏,平板→耳机,耳机→平板 这6个规则的重要性较高,可见关联性较强;在概率为0.5条件下,规则 台灯→抽纸 的重要性较高,关联性较强。

在这里插入图片描述

2、选择“项集”选项并分析

在这里插入图片描述

由图可知,支持度较高的1-项集有{平板},{圆珠笔},{牙刷},{牙膏},{台灯},{水杯},{耳机},{草稿本},2-项集有{圆珠笔, 草稿本},{牙刷, 牙膏},{平板, 耳机}。

3、选择“依赖关系网络”选项并分析

将左侧的链接拉到最底端,观察最强链接。

在这里插入图片描述

最强链接有如下三个:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

五、实验总结体会

  通过挖掘数据仓库中的关联规则,我们可以发现数据之间的潜在关联性,从而为业务决策提供重要的参考依据。
  在进行实验时,首先需要准备好数据集,确保数据的完整性和准确性。然后,选择合适的挖掘算法和工具进行实验。常用的算法包括Apriori算法和FP-Growth算法,可以使用工具如Weka、RapidMiner或Python中的相应库进行实现。Apriori算法和FP-Growth都是用来发现频繁项集的算法,但Apriori算法在寻找频繁项集时需要不停的扫描数据集,而FP-Growth算法只需要扫描数据集两次,因此FP-Growth算法执行速度更快,频繁项集是进行关联分析的基础,因此能够快速高效的查找频繁项集十分重要。
  在实验过程中,需要注意调整算法的参数,以获得更好的挖掘结果。同时,对挖掘结果进行评估和解释,确保发现的关联规则具有实际意义,并能够为业务决策提供帮助。
  最后,及时总结实验过程中的经验和教训,不断优化挖掘过程,提高挖掘效率和准确性。通过不断地实践和探索,可以更好地理解数据仓库中的数据,挖掘出更多有价值的信息,为企业的发展提供有力支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/4878.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java集合相关的List、Set、Map基础知识

目录 一、集合介绍 二、List 三、Map HashMap的数据结构 如何理解红黑树 四、set 一、集合介绍 在Java中,集合是一种用于存储对象的数据结构,它提供了一种更加灵活和强大的方式来处理和操作数据。Java集合框架提供了一系列接口和类,用…

Pointnet++改进即插即用系列:全网首发PPA反向残差移动块 |即插即用,提升特征提取模块性能

简介:1.该教程提供大量的首发改进的方式,降低上手难度,多种结构改进,助力寻找创新点!2.本篇文章对Pointnet++特征提取模块进行改进,加入PPA,提升性能。3.专栏持续更新,紧随最新的研究内容。 目录 1.理论介绍 2.修改步骤 2.1 步骤一 2.2 步骤二 2.3 步骤三

Transformer模型详解01-Word Embedding

文章目录 前言Transformer 整体结构Transformer 的输入单词 Embedding原理CBOW 模型one-hot构建 CBOW 训练数据集构建 CBOW 神经网络训练 CBOW 神经网络 Skip-gram 模型one-hot构建 Skip-gram训练数据集训练 Skip-gram神经网络 Word2Vec实例数据训练保存和加载 前言 Transform…

【上岗认证】错题整理记录

目录 🌞一、阶段1:编码规范 🌊编码规范考试-CC 🌞二、阶段2:开发基础 🌊C/C 🌊数据库(Oracle/MySql) 🌞三、阶段3:测试基础 🌊…

Springboot+Vue项目-基于Java+MySQL的家政服务平台系统(附源码+演示视频+LW)

大家好!我是程序猿老A,感谢您阅读本文,欢迎一键三连哦。 💞当前专栏:Java毕业设计 精彩专栏推荐👇🏻👇🏻👇🏻 🎀 Python毕业设计 &…

实时数仓选型

实时数仓选型 实时数仓选型第一版实时数仓选型第二版 实时数仓选型第一版 实时数仓分层: 计算框架:Flink;存储框架:消息队列(可以实时读取&可以实时写入)ODS:Kafka 使用场景:每过来一条数据,读取到并加工处理DIM: HBase 使用场景:事实表会根据主键获取一行维表数据(1.永…

jna中出现错误解决方案。

jna中出现错误解决方案 为什么会出现这些错误之JNA版本的锅不要手动导入jar包,使用maven切换高版本会出现的错误Structure.getFieldOrder() on class 错误java.lang.IllegalArgumentException: Invalid calling convention 63 错误 为什么会出现这些错误之JNA版本的…

人体跟随小车(旭日x3派,yolov5,ros2)

最终现象 人体跟随 策略 底盘主控是stm32f103c8t6,读取左右轮编码器并标定速度,读取mpu6050的yaw值一并传至上位机。上位机通过usb摄像头捕获图像,送入模型进行推理,根据得到的结果生成控制指令下发给底盘进行人体跟随。

【MySQL】redolog、undolog和binlog日志文件详解

【MySQL】redolog、undolog和binlog日志文件详解 前言redolog设计目标记录内容写入策略 undolog设计目标记录内容写入策略 binlog设计目标记录内容写入策略 小结 前言 当谈论MySQL数据库的日志文件时,通常会涉及到三种主要类型:redo log(重做…

使用Python进行自然语言处理:情感分析

使用Python进行自然语言处理的热门应用:情感分析 自然语言处理(NLP)是人工智能领域中的一个重要分支,它致力于使计算机能够理解、解释和生成人类语言。在NLP的诸多应用中,情感分析是一项备受关注的热门应用之一。情感分析(Sentiment Analysis)是通过分析文本中的情感色…

陪诊小程序开发:线上陪诊行业的发展

在人口老龄化的严重的当下,老人看病也更加困难,而陪诊行业作为一个新型行业,正在走入人们的生活中,帮助大众解决看病难等问题,为大众带来便捷高效的就医环境。 随着互联网时代的到来,各行各业也都开始向线…

FaceDiffuser 部署笔记

目录 依赖项安装: win11 ffmpeg合并报错 修改后代码: facebook/hubert-base-ls960报错 我的解决方法: DiffSpeaker网络音频编码器: 头模加载 transformers 依赖项安装: "tokenizers": "tokeniz…

设置Ollama在局域网中访问的方法(Ubuntu)

趁着Llama3的热度试了一下Ollama,果然部署推理大模型很有用。一个现实的需求是,如果我们要在局域网中访问Ollama上大模型的服务,应该怎么办呢?参考了一下其他博客的方法 例如:一分钱不花!手把手教你部署Go…

Android system — 链接器命名空间共享库配置方法(Android 11后)

Android system — 链接器命名空间共享库配置方法 1. 应用进程1.1 应用进程类加载器的命名空间初始化1.1.1 OpenNativeLibrary1.1.2 LibraryNamespaces::Create 1.2 配置共享库位置 2. native进程2.1 native 命名空间配置初始化2.1.1 android_namespace_t::is_accessible2.1.2 …

清理docker缓存

要清理Docker缓存,你可以使用以下命令: docker system prune 这个命令会删除所有未使用的容器、网络、镜像(默认不包括Tag为none的)和悬空的镜像。如果你也想要删除所有未使用的镜像,不仅仅是悬空的,可以添加-a参数:…

swift语言学习总结

Var 表示变量, let表示常量。数组和map, 都用中括号[].可以直接赋值。可以用下标或键访问。 var shoppingList ["catfish", "water", "tulips", "blue paint”]//最后一个可以加逗号。 shoppingList[1] "bo…

Web开发中的网络安全: 常见攻击及防范策略

在Web开发的世界里,网络攻击是一种常见且潜在的威胁。理解这些攻击如何运作并采取措施防范它们对于构建安全的Web应用至关重要。本文将介绍几种常见的Web攻击,提供防范策略,并以实例说明如何防止这些攻击。 SQL注入 概要: SQL注入攻击是攻击…

Python+Selenium基于PO模式的Web自动化测试框架

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 一、什么是Selenium? Selenium是一个基于浏览器的自动化测试工具,它提供…

Linux pppstats命令教程:如何详解PPP连接的统计信息(附案例详解和注意事项)

Linux pppstats命令介绍 pppstats命令用于显示活动的PPP(点对点协议)连接的统计信息。这些统计信息包括发送和接收的数据包数量、压缩前和压缩后的数据量、IPCP和LCP协议的状态等。 Linux pppstats命令适用的Linux版本 pppstats命令在大多数Linux发行…

吴恩达机器学习笔记:第 8 周-14降维(Dimensionality Reduction) 14.3-14.5

目录 第 8 周 14、 降维(Dimensionality Reduction)14.3 主成分分析问题14.4 主成分分析算法14.5 选择主成分的数量 第 8 周 14、 降维(Dimensionality Reduction) 14.3 主成分分析问题 主成分分析(PCA)是最常见的降维算法。 在 PCA 中,我们要做的是找到一个方向…