机器学习 --- 预测天气是否适合出去游玩(一)| 贝叶斯

2024-03-25 22:59

本文主要是介绍机器学习 --- 预测天气是否适合出去游玩(一)| 贝叶斯,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

🌮开发平台:jupyter lab

🍖运行环境:python3、TensorFlow2.x

预测天气是否适合出去游玩(一)| 贝叶斯

  • 2. 代码实现部分

题目:如图所示
解法
(1)机器学习 — 预测天气是否适合出去游玩(一)| 贝叶斯
(2)机器学习 — 预测天气是否适合出去游玩(二)| 逻辑回归
(3)机器学习 — 预测天气是否适合出去游玩(三)| 神经网络mlp
在这里插入图片描述

2. 代码实现部分

# -*- coding: utf-8 -*-
## 1.转换数据:ont-hot编码
## 2.模型:BernoulliNB()
## 3.交叉验证模型:cross_val_score()
import pandas
#读取数据到 data 变量中
data = pandas.read_csv('./machine.csv', encoding='utf8', engine='python'
)
#填充缺失值,把所有放弃投票的值填充为字符串None
data = data.fillna("None")
## 获取关键字
data.keys()

在这里插入图片描述

# 将所有属性作为特征
features = ['天气状况', '温度', '湿度', '风力'
]
### 转换变量
from sklearn.preprocessing import OneHotEncoder
#新建独热编码器
oneHotEncoder = OneHotEncoder()
#训练独热编码器,得到转换规则
oneHotEncoder.fit(data[features])
#转换数据
oneHotData = oneHotEncoder.transform(data[features])
## 获取构造器
#伯努利贝叶斯
from sklearn.naive_bayes import BernoulliNB
BNBModel = BernoulliNB()
from sklearn.model_selection import cross_val_score
#进行K折交叉验证
cvs = cross_val_score(BNBModel, oneHotData, data['是否适合游玩'], cv=4)
cvs.mean()   # out: 0.6875
## 实例化模型
BNBModel = BernoulliNB()
#使用所有数据训练模型
BNBModel.fit(oneHotData, data['是否适合游玩'])
#对所有的数据进行预测
data['预测是否适合出去游玩'] = BNBModel.predict(oneHotData)
from sklearn.metrics import confusion_matrix
#计算混淆矩阵,labels参数,可由 BNBModel.classes_ 得到
confusion_matrix(data['是否适合游玩'], data['预测是否适合出去游玩'], labels=['是', '否']
)

在这里插入图片描述

pandas.crosstab(data['是否适合游玩'], data['预测是否适合出去游玩'])

在这里插入图片描述

### 查看贝叶斯预测情况
### 从下图可看出,仅红色部分预测错误,准确率较高;
### 可通过增加数据量提高预测准确值
data

在这里插入图片描述

这篇关于机器学习 --- 预测天气是否适合出去游玩(一)| 贝叶斯的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/846528

相关文章

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

基于Python实现智能天气提醒助手

《基于Python实现智能天气提醒助手》这篇文章主要来和大家分享一个实用的Python天气提醒助手开发方案,这个工具可以方便地集成到青龙面板或其他调度框架中使用,有需要的小伙伴可以参考一下... 目录项目概述核心功能技术实现1. 天气API集成2. AI建议生成3. 消息推送环境配置使用方法完整代码项目特点

Python如何判断字符串中是否包含特殊字符并替换

《Python如何判断字符串中是否包含特殊字符并替换》这篇文章主要为大家详细介绍了如何使用Python实现判断字符串中是否包含特殊字符并使用空字符串替换掉,文中的示例代码讲解详细,感兴趣的小伙伴可以了... 目录python判断字符串中是否包含特殊字符方法一:使用正则表达式方法二:手动检查特定字符Pytho

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Python如何精准判断某个进程是否在运行

《Python如何精准判断某个进程是否在运行》这篇文章主要为大家详细介绍了Python如何精准判断某个进程是否在运行,本文为大家整理了3种方法并进行了对比,有需要的小伙伴可以跟随小编一起学习一下... 目录一、为什么需要判断进程是否存在二、方法1:用psutil库(推荐)三、方法2:用os.system调用