python西瓜数据集朴素贝叶斯源码
时间: 2023-09-13 21:01:01 浏览: 182
数据挖掘第四次作业(朴素贝叶斯)
朴素贝叶斯分类算法是一种基于概率的分类算法,对于给定的输入数据,通过计算它们属于每个类别的概率来进行分类。在使用朴素贝叶斯算法时,我们需要使用训练数据集进行模型的训练。
下面是Python中使用西瓜数据集进行朴素贝叶斯分类的源码示例:
```python
import pandas as pd
from sklearn.naive_bayes import GaussianNB
# 读取西瓜数据集
data = pd.read_csv('watermelon.csv')
# 将数据集分为训练数据和测试数据
train_data = data[:8] # 前8条数据作为训练数据
test_data = data[8:] # 后2条数据作为测试数据
# 选择特征和目标变量
features = train_data[['色泽', '根蒂', '敲声', '纹理', '脐部', '触感']]
target = train_data['好瓜']
# 创建朴素贝叶斯分类器
classifier = GaussianNB()
# 拟合模型
classifier.fit(features, target)
# 预测测试数据
test_features = test_data[['色泽', '根蒂', '敲声', '纹理', '脐部', '触感']]
predictions = classifier.predict(test_features)
# 打印预测结果
for i, prediction in enumerate(predictions):
print('测试样本', i+1, '预测结果:', prediction)
```
在这个示例中,我们首先使用Pandas库读取西瓜数据集。然后,将数据集分为训练数据和测试数据,一般情况下会随机划分。接着,选择特征和目标变量,并创建了一个GaussianNB的朴素贝叶斯分类器。我们使用fit方法将训练数据集拟合到模型中,然后使用测试数据进行预测,并打印预测结果。
需要注意的是,此示例仅适用于具有色泽、根蒂、敲声、纹理、脐部和触感这些特征的西瓜数据集。你可以根据你的具体数据集进行调整。此外,还需要确保西瓜数据集的CSV文件('watermelon.csv')在当前工作目录中。
阅读全文