朴素贝叶斯对鸢尾花数据进行分类
时间: 2024-01-09 07:45:22 浏览: 95
手工实现KNN和朴素贝叶斯算法对鸢尾花数据进行自动分类 完整代码+数据 可直接运行
5星 · 资源好评率100%
朴素贝叶斯是一种基于概率统计的分类方法,适用于多类别分类问题。在鸢尾花数据集中,我们可以使用朴素贝叶斯进行分类,以下是一个简单的代码示例:
```python
import numpy as np
from sklearn.datasets import load_iris
from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import train_test_split
# 加载数据集
iris = load_iris()
X = iris.data
y = iris.target
# 分割数据集为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 创建朴素贝叶斯分类器
gnb = GaussianNB()
# 训练分类器
gnb.fit(X_train, y_train)
# 预测测试集结果
y_pred = gnb.predict(X_test)
# 计算准确率
accuracy = np.mean(y_pred == y_test)
print("朴素贝叶斯分类器的准确率为: {:.2f}%".format(accuracy * 100))
```
在上面的代码中,我们首先加载鸢尾花数据集,然后将数据集分割为训练集和测试集。接着,我们创建一个 GaussianNB 类的对象 gnb,使用训练数据来训练分类器。最后,我们使用测试数据来预测分类结果,并计算准确率。
在这个简单的例子中,我们使用了 GaussianNB 类,它是一种基于高斯分布的朴素贝叶斯分类器。当然,在实际应用中,我们可能需要根据不同的数据集选择不同的朴素贝叶斯分类器。
阅读全文