百度文库
文库2

机器学习实战的朴素贝叶斯的代码太复杂

"""
Created on Thu Aug 10 15:08:59 2017@author: luogan
"""#coding=gbk#Naive Bayes#Calculate the Prob. of class:cls
def P(data,cls_val,cls_name="class"):cnt = 0.0for e in data:if e[cls_name] == cls_val:cnt += 1return cnt/len(data)#Calculate the Prob(attr|cls)
def PT(data,cls_val,attr_name,attr_val,cls_name="class"):cnt1 = 0.0cnt2 = 0.0for e in data:if e[cls_name] == cls_val:cnt1 += 1if e[attr_name] == attr_val:cnt2 += 1return cnt2/cnt1#Calculate the NB
def NB(data,test,cls_y,cls_n):PY = P(data,cls_y)PN = P(data,cls_n)for key,val in test.items():print (key,val)PY *= PT(data,cls_y,key,val)PN *= PT(data,cls_n,key,val)return {cls_y:PY,cls_n:PN}if __name__ == "__main__":#datadata = [{"outlook":"sunny", "temp":"hot", "humidity":"high", "wind":"weak", "class":"no" },{"outlook":"sunny", "temp":"hot", "humidity":"high", "wind":"strong", "class":"no" },{"outlook":"overcast", "temp":"hot", "humidity":"high", "wind":"weak", "class":"yes" },{"outlook":"rain", "temp":"mild", "humidity":"high", "wind":"weak", "class":"yes" },{"outlook":"rain", "temp":"cool", "humidity":"normal", "wind":"weak", "class":"yes" },{"outlook":"rain", "temp":"cool", "humidity":"normal", "wind":"strong", "class":"no" },{"outlook":"overcast", "temp":"cool", "humidity":"normal", "wind":"strong", "class":"yes" },{"outlook":"sunny", "temp":"mild", "humidity":"high", "wind":"weak", "class":"no" },{"outlook":"sunny", "temp":"cool", "humidity":"normal", "wind":"weak", "class":"yes" },{"outlook":"rain", "temp":"mild", "humidity":"normal", "wind":"weak", "class":"yes" },{"outlook":"sunny", "temp":"mild", "humidity":"normal", "wind":"strong", "class":"yes" },{"outlook":"overcast", "temp":"mild", "humidity":"high", "wind":"strong", "class":"yes" },{"outlook":"overcast", "temp":"hot", "humidity":"normal", "wind":"weak", "class":"yes" },{"outlook":"rain", "temp":"mild", "humidity":"high", "wind":"strong", "class":"no" },]#calculateprint (NB(data,{"outlook":"sunny","temp":"cool","humidity":"high","wind":"strong"},"yes","no"))

朴素贝叶斯 python 实现相关推荐

  1. python程序员买西瓜代码_朴素贝叶斯python代码实现(西瓜书)

    本文将要为您介绍的是朴素贝叶斯python代码实现(西瓜书),具体完成步骤:朴素贝叶斯python代码实现(西瓜书) 摘要: 朴素贝叶斯也是机器学习中一种非常常见的分类方法,对于二分类问题,并且数据集 ...

  2. 基于朴素贝叶斯+Python实现垃圾邮件分类和结果分析

    基于朴素贝叶斯+Python实现垃圾邮件分类 朴素贝叶斯原理 请参考: 贝叶斯推断及其互联网应用(二):过滤垃圾邮件 Python实现 源代码主干来自: python实现贝叶斯推断--垃圾邮件分类 我 ...

  3. 学习笔记——Kaggle_Digit Recognizer (朴素贝叶斯 Python实现)

    本文是个人学习笔记,该篇主要学习朴素贝叶斯算法概念,并应用sklearn.naive_bayes算法包解决Kaggle入门级Digit Recognizer. 贝叶斯定理 朴素贝叶斯 Python 代 ...

  4. 数据挖掘十大算法(九):朴素贝叶斯 python和sklearn实现

    第三个算法终于算是稍有了解了,其实当你结合数据了解了它的实现原理后,你会发现确实很朴素.这里对朴素贝叶斯算法做一个介绍和总结,包括(原理.一个代码示例.sklearn实现),皆为亲自实践后的感悟,下面 ...

  5. 朴素贝叶斯python代码_朴素贝叶斯模型及python实现

    1 朴素贝叶斯模型 朴素贝叶斯法是基于贝叶斯定理.特征条件独立假设的分类方法.在预测时,对输入x,找出对应后验概率最大的 y 作为预测. NB模型: 输入: 先验概率分布:P(Y=ck),k=1,2, ...

  6. 朴素贝叶斯python实现预测_Python实现朴素贝叶斯分类器的方法详解

    本文实例讲述了Python实现朴素贝叶斯分类器的方法.分享给大家供大家参考,具体如下: 贝叶斯定理 贝叶斯定理是通过对观测值概率分布的主观判断(即先验概率)进行修正的定理,在概率论中具有重要地位. 先 ...

  7. [转载] 朴素贝叶斯python实现预测_Python实现朴素贝叶斯分类器的方法详解

    参考链接: Python朴素贝叶斯分类器 本文实例讲述了Python实现朴素贝叶斯分类器的方法.分享给大家供大家参考,具体如下: 贝叶斯定理 贝叶斯定理是通过对观测值概率分布的主观判断(即先验概率)进 ...

  8. 朴素贝叶斯 python

    #!/usr/bin/python3 # -*- coding: utf-8 -*- from numpy import * import random import math import oper ...

  9. Python机器学习06——朴素贝叶斯

    本系列所有的代码和数据都可以从陈强老师的个人主页上下载:Python数据程序 参考书目:陈强.机器学习及Python应用. 北京:高等教育出版社, 2021. 本系列基本不讲数学原理,只从代码角度去让 ...

最新文章

  1. 解决MYSQL错误:ERROR 1040 (08004): Too many connections
  2. dataTables基础函数变量
  3. el-table表格fixed=“right“后表格错乱;Safari浏览器el-table表格错乱;Safari浏览器样式需改无效;
  4. 【bzoj2806】 Ctsc2012—Cheat
  5. STM32H743-梳理ADC模数转换器在CubeMX上的配置
  6. 常用的JS与XML结合用法 简单示例
  7. java 视频转码工具类_JavaCV入门指南:FrameConverter转换工具类及CanvasFrame图像预览工具类(javaCV教程完结篇)...
  8. Linux基础—5.Shell基础编程【有图有真相】
  9. java 通过TCP\UDP 协议实现多人聊天,点对点,文件传送-----分服务器端和客户端...
  10. 编程中常见的安全算法
  11. Netty4.0学习笔记系列之一:Server与Client的通讯
  12. [史上最全]数学符号参考手册大全
  13. 什么软件画er图方便_er图绘制工具|er图绘制工具(powerdesigner) v16.5 免费版 - 软件下载 - 绿茶软件园|33LC.com...
  14. 绘图板应用讲解计算机,电脑绘图板怎么用?基础电脑绘图板入门教程!
  15. (matlab代码)绘制地震记录的F-K谱
  16. Python实现Hart协议
  17. 鲨鱼游戏/游戏测试实习面试
  18. PowerVR Series5 Architecture Guide for Developers
  19. Unity制作自己的Project Template
  20. java字体被背景盖住_背景透明后字体,贴图产生遮盖覆盖问题的解决方法。

热门文章

  1. 学习 git clone 几种不同的协议
  2. Android 中文 API (19) —— TwoLineListItem
  3. Postfix+dovecot+extmail+sasl+mysql源码安装手册
  4. C# Azure 存储-分布式缓存Redis的新建配置查看
  5. 广播等风暴的解决办法
  6. php语+言教程,【杂谈】php言语入门教程(PHP编程进修路线图)
  7. 文件服务器 双机,文件服务器双机备份
  8. php execute 更新不变,php – Doctrine executeUpdate数组参数
  9. tensorflow 读取cifar_浅入浅出TensorFlow 4 - 训练CIFAR数据
  10. 数据结构和算法一定要背算法的代码嘛_我们为什么要学习数据结构和算法?