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

R语言数据挖掘-关联规则挖掘(1)

一、分析目的和数据集描述

要分析的数据是美国一区域的保险费支出的历史数据。保险费用数据表的每列分别为年龄、性别、体重指数、孩子数量、是否吸烟、所在区域、保险收费。

本文的主要目的是分析在年龄、性别、体重指数、孩子数量、是否吸烟、所在区域中这些因素中,哪些因素对保险费支出影响最大,这些因素中哪些因素与保险费用的关联最大。

分析影响保险费支出的具体因素,本文用到了R语言的数据挖掘-关联规则挖掘Apriori算法。

具体使用和详细用法如下:

二、导入数据集

df<-read.csv('f:/桌面/insurance.csv')

head(df)

head(df)age    sex   bmi children smoker    region charges
1  19 female 27.90        0    yes southwest   16885
2  18   male 33.77        1     no southeast    1726
3  28   male 33.00        3     no southeast    4449
4  33   male 22.70        0     no northwest   21984
5  32   male 28.88        0     no northwest    3867
6  31 female 25.74        0     no southeast    3757

三、导入关联规则挖掘用到的分析程序包

library(arules)    #用于数据关联规则挖掘
library(arulesViz)    #关联规则挖掘的可视化程序包
library(dplyr)    #用于数据处理的分析包,我们将使用里面的管道函数%>%
library(ggplot2)  

四、查看数据集

summary(df)

查看体重指数的分布情况,使用直方图:

ggplot(df,aes(x=bmi))+
  geom_histogram(binwidth=5,fill='lightblue',colour='black')

因为要分析的数据集无缺失值,下一步就是要对数据各变量转换为因子型,也是是规则关联函数

apriori()要求的。

五、将数据集的变量转换为因子型

df<-df %>% mutate(age=as.factor(cut(age,breaks = c(0,25,50,75,100)))) %>% 
  mutate(sex=as.factor(sex)) %>% mutate(bmi=as.factor(cut(bmi,breaks = c(0,15,30,45,60,75)))) %>%
  mutate(children=as.factor(children)) %>% mutate(smoker=as.factor(smoker)) %>%
  mutate(region=as.factor(region)) %>% mutate(charges=as.factor(cut(charges,breaks = c(0,13000,26000,39000,65000))))

在这里用到了管道函数,对年龄、健康指数、保险费用按区间分组,把年龄分为4组,健康指数分为5组,保险费支出分为了4组,然后对分组后的变量使用as.factor()转换为因子型变量。

六、对保险费用数据集进行关联分析

rules<-apriori(df,parameter = list(supp=0.1,conf=0.8))
summary(rules)

运行得到了各规则的描述性统计量,共生成了80条规则。支持度为0.1,置信度为0.8.

查看关联分析结果:

options(digits=4)
inspect(head(rules,by='lift'))

运行得到了按提升值排序后的6条规则。

例如第一条年龄在0到25岁之间,无小孩,不吸烟的家庭关联最低程度的保险费用支出的支持度为0.1121,置信度94.34%。

关联规则分析可视化

plot(rules)

七、指定后项集的关联挖掘分析

1、后项集指定为保险费用支出charges=(39000,65000],即分析关联最高级别的保险费用支出的影响因素有哪些。

rules_rhs_highrank<-apriori(df,parameter = list(supp=0.02,conf=0.5),
        appearance = list(rhs=c('charges=(3.9e+04,6.5e+04]')),control=list(verbose=F))

inspect(head(rules_rhs_highrank,by='lift'))

查看分析结果:

从运行结果可以看到:年龄较大,体重较重,吸烟等因素与保险费用支出较高支持相关联。

inspect(head(rules_rhs_highrank[!is.redundant(rules_rhs_highrank)],by='lift'))

去除规则冗余后的结果如下:

2、后项集指定为保险费用支出charges=(0,13000],即分析关联最低级别的保险费用支出的影响因素有哪些。

rules_rhs_lowrank<-apriori(df,parameter = list(supp=0.1,conf=0.5),
             appearance = list(rhs=c('charges=(0,1.3e+04]')),control=list(verbose=F))

inspect(head(rules_rhs_lowrank,by='lift'))

运行得到:

从结果可以看到,年龄较小,无孩子,不吸烟,是女性的保险费用支出较少。

相关文章:

R语言数据挖掘-关联规则挖掘(1)

一、分析目的和数据集描述 要分析的数据是美国一区域的保险费支出的历史数据。保险费用数据表的每列分别为年龄、性别、体重指数、孩子数量、是否吸烟、所在区域、保险收费。 本文的主要目的是分析在年龄、性别、体重指数、孩子数量、是否吸烟、所在区域中这些因素中&#xf…...

【ansible】ansible的介绍和安装

前言运维自动化 云计算核心职能 搭建平台架构 日常运营保障 性能效率优化 相关工具 代码管理&#xff08;SCM&#xff09;&#xff1a;GitHub、GitLab、BitBucket、SubVersion 构建工具&#xff1a;maven、Ant、Gradle 自动部署&#xff1a;Capistrano、CodeDeploy 持续…...

二维数组_矩阵交换行

任务描述 给定一个5*5的矩阵&#xff08;数学上&#xff0c;一个rc的矩阵是一个由r行c列元素排列成的矩形阵列&#xff09;&#xff0c;将第n行和第m行交换&#xff0c;输出交换后的结果。 输入格式: 输入共6行&#xff0c;前5行为矩阵的每一行元素,元素与元素之间以一个空格…...

mysql笔记:14. 权限管理

文章目录 MySQL权限授予权限查看权限撤销权限权限生效机制访问控制的实现 在实际生产中&#xff0c;为了保证数据的安全&#xff0c;数据库管理人员需要为不同的操作人员分配不同的权限&#xff0c;限制登录MySQL服务器的用户只能在其权限范围内操作。同时管理员还可以根据不同…...

无硫防静电手指套:高科技产业的纯净与安全新选择

随着科技的飞速发展&#xff0c;高科技产业对于生产环境的纯净度和产品的防静电要求日益严格。为了满足这一高标准的需求&#xff0c;无硫防静电手指套应运而生&#xff0c;以其独特的无硫特性和出色的防静电功能&#xff0c;迅速成为了高科技产业中的纯净与安全新选择。 无硫手…...

由浅到深认识C语言(10):字符串处理函数

该文章Github地址&#xff1a;https://github.com/AntonyCheng/c-notes 在此介绍一下作者开源的SpringBoot项目初始化模板&#xff08;Github仓库地址&#xff1a;https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址&#xff1a;https://blog.csdn…...

防范服务器被攻击:查询IP地址的重要性与方法

在当今数字化时代&#xff0c;服务器扮演着重要的角色&#xff0c;为企业、组织和个人提供各种网络服务。然而&#xff0c;服务器也成为了网络攻击者的目标之一&#xff0c;可能面临各种安全威胁&#xff0c;例如DDoS攻击、恶意软件攻击、数据泄露等。为了有效地防范服务器被攻…...

3. ElasticSearch搜索技术深入与聚合查询实战

1. ES分词器详解 1.1 基本概念 分词器官方称之为文本分析器&#xff0c;顾名思义&#xff0c;是对文本进行分析处理的一种手段&#xff0c;基本处理逻辑为按照预先制定的分词规则&#xff0c;把原始文档分割成若干更小粒度的词项&#xff0c;粒度大小取决于分词器规则。 1.2 …...

【Linux】Shell编程【一】

shell是一个用 C 语言编写的程序&#xff0c;它是用户使用 Linux 的桥梁。Shell 既是一种命令语言&#xff0c;又是一种程序设计语言。 Shell 是指一种应用程序&#xff0c;这个应用程序提供了一个界面&#xff0c;用户通过这个界面访问操作系统内核的服务。 Shell属于内置的…...

Windows10+tensorrt+python部署yolov5

一、安装cuda 打开NVIDIA控制面板 —>帮助—>系统信息—>组件&#xff0c;找到驱动版本新&#xff0c;我这边是11.2&#xff0c; 然后去CUDA Toolkit Archive | NVIDIA Developer下载对应版本的CUDA&#xff0c;根据查看的CUDA型号确定对应的cuda Toolhit版本&#…...

【前端框架的发展史详细介绍】

前端框架的发展史 前端框架的发展史可以追溯到1995年&#xff0c;当时微软推出了IE浏览器并开始支持CSS&#xff0c;随后&#xff0c;在1997年&#xff0c;W3C&#xff08;万维网联盟&#xff09;发布了CSS的第一个正式标准。 在2003年&#xff0c;苹果推出了Safari浏览器&am…...

[JAVAEE]—进程和多线程的认识

文章目录 什么是线程什么是进程进程的组成什么是pcb 进程概括线程线程与进程的关系线程的特点 创建线程创建线程方法创建线程的第二种方法对比 其他的方式匿名内部类创建线程匿名内部类创建Runable的子类lambda表达式创建一个线程 多线程的优势 什么是线程 什么是进程 首先想…...

sqllab第十九关通关笔记

知识点&#xff1a; 错误注入 最大长度为32位&#xff1b;如果目标长度>32时&#xff0c;需要利用截取函数进行分段读取referer注入 insert语句update语句 通过admin admin进行登录发现页面打印除了referer字段的信息 这应该是一个referer注入 首先进行测试一下 构造payl…...

张量维度改变总结

文章目录 一、view() 或 reshape()二、unsqueeze()三、squeeze()四、transpose()五、torch.expand_dims 一、view() 或 reshape() view() 或 reshape(): 这两个函数可以用于改变张量的形状&#xff0c;但保持元素总数不变。它们可以接受一个新的形状作为参数&#xff0c;并返回…...

C++ ezOptionParse的用法

在网上找了一下&#xff0c;发现并没有很多关于这个小型头文件的资料 只好自己上了 int main(int argc, const char * argv[]) {ezOptionParser opt;opt.overview "Demo of parsers features."; //概要说明,一般需要填写&#xff0c;简要介绍程序的作用opt.synta…...

MATLAB:一些杂例

a 2; b 5; x 0:pi/40:pi/2; %增量为pi/40 y b*exp(-a*x).*sin(b*x).*(0.012*x.^4-0.15*x.^30.075*x.^22.5*x); %点乘的意义 z y.^2; %点乘的意义 w(:,1) x; %组成w&#xff0c;第一列为x w(:,2) y; %组成w&#xff0c;第二列为y w(:,3) z; %组成w&#xff0c;第三列为z…...

使用OpenCV实现两张图像融合在一起

简单介绍 图像融合技术是一种结合多个不同来源或不同传感器捕获的同一场景的图像数据&#xff0c;以生成一幅更全面、更高质量的单一图像的过程。这种技术广泛应用于遥感、医学影像分析、计算机视觉等多个领域。常见的图像融合技术包括基于像素级、特征级和决策级的融合方法&a…...

PyTorch学习笔记之基础函数篇(十)

文章目录 6 张量操作6.1 torch.reshape()函数6.1 torch.transpose()函数6.1 torch.permute()函数6.1 torch.unsqueez()函数6.1 torch.squeeze()函数6.1 torch.cat()函数6.1 torch.stack()函数 6 张量操作 6.1 torch.reshape()函数 torch.reshape() 是 PyTorch 中的一个函数&a…...

kubernetes部署集群

kubernetes部署集群 集群部署获取镜像安装docker[集群]阿里仓库下载[集群]集群部署[集群]集群环境配置[集群]关闭系统Swap[集群]安装Kubeadm包[集群]配置启动kubelet[集群]配置master节点[master]配置使用网络插件[master]node加入集群[node]后续检查[master]测试集群 集群部署…...

软件工程师,该偿还一下技术债了

概述 在软件开发领域&#xff0c;有一个特殊的概念——“技术债”&#xff0c;它源于Ward Cunningham的一个比喻&#xff0c;主要用来描述那些为了短期利益而选择的快捷方式、临时解决方案或者未完成的工作&#xff0c;它们会在未来产生额外的技术成本。就像金融债务一样&#…...

大话软工笔记—需求分析概述

需求分析&#xff0c;就是要对需求调研收集到的资料信息逐个地进行拆分、研究&#xff0c;从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要&#xff0c;后续设计的依据主要来自于需求分析的成果&#xff0c;包括: 项目的目的…...

Java 加密常用的各种算法及其选择

在数字化时代&#xff0c;数据安全至关重要&#xff0c;Java 作为广泛应用的编程语言&#xff0c;提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景&#xff0c;有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

九天毕昇深度学习平台 | 如何安装库?

pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子&#xff1a; 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...

论文笔记——相干体技术在裂缝预测中的应用研究

目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术&#xff1a;基于互相关的相干体技术&#xff08;Correlation&#xff09;第二代相干体技术&#xff1a;基于相似的相干体技术&#xff08;Semblance&#xff09;基于多道相似的相干体…...

Linux离线(zip方式)安装docker

目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1&#xff1a;修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本&#xff1a;CentOS 7 64位 内核版本&#xff1a;3.10.0 相关命令&#xff1a; uname -rcat /etc/os-rele…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...

【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)

本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...

Webpack性能优化:构建速度与体积优化策略

一、构建速度优化 1、​​升级Webpack和Node.js​​ ​​优化效果​​&#xff1a;Webpack 4比Webpack 3构建时间降低60%-98%。​​原因​​&#xff1a; V8引擎优化&#xff08;for of替代forEach、Map/Set替代Object&#xff09;。默认使用更快的md4哈希算法。AST直接从Loa…...

MySQL 索引底层结构揭秘:B-Tree 与 B+Tree 的区别与应用

文章目录 一、背景知识&#xff1a;什么是 B-Tree 和 BTree&#xff1f; B-Tree&#xff08;平衡多路查找树&#xff09; BTree&#xff08;B-Tree 的变种&#xff09; 二、结构对比&#xff1a;一张图看懂 三、为什么 MySQL InnoDB 选择 BTree&#xff1f; 1. 范围查询更快 2…...

手机平板能效生态设计指令EU 2023/1670标准解读

手机平板能效生态设计指令EU 2023/1670标准解读 以下是针对欧盟《手机和平板电脑生态设计法规》(EU) 2023/1670 的核心解读&#xff0c;综合法规核心要求、最新修正及企业合规要点&#xff1a; 一、法规背景与目标 生效与强制时间 发布于2023年8月31日&#xff08;OJ公报&…...