【统计分析数学模型】判别分析(三):Bayes判别法

在这里插入图片描述


一、Bayes判别法

Bayes判别法假定对研究对象有一定的认识,这种认识用先验概率描述,再利用样本信息来修正已有的先验概率,从而得到后验概率,最后根据后验概率判断各样品的类别。

朴素Bayes分类(naive Bayes classifier) 是一种简单而实用的分类算法,其基本原理是Bayes定理。

klaR包里的 NaiveBayes() 函数实现朴素Bayes分类算法。

二、R语言实现Bayes判别法

1. 运行NaiveBayes()函数

library(klaR)
thyroid.bayes<-NaiveBayes(Diagnosis~RT3U+T4+T3+TSH+DTSH,data=thyroid)
names(thyroid.bayes)

函数NaiveBayes()共有7项输出结果,其中apriori是使用的先验概率,tables存储了用于建立判别规则的所有变量在各类别下的条件概率。

结果如下:

> names(thyroid.bayes)
[1] "apriori"   "tables"    "levels"    "call"      "x"         "usekernel" "varnames" 

2. 绘制密度曲线

用上面建立的判别规则thyroid.bayes绘制参与规则建立的5个变量在不同类别下的密度曲线:

plot(thyroid.bayes)

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

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

3. 计算回判正确率

通过回代法查看判别效果:

thyroid.pred<-predict(thyroid.bayes)
table(thyroid.pred$class,thyroid$Diagnosis)

运行结果如下:

> table(thyroid.pred$class,thyroid$Diagnosis)
        
         Normal Hyper Hypo
  Normal    149     1    4
  Hyper       0    34    0
  Hypo        1     0   26

一共有6个对象被错判,回判正确率为97.2%。

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值