鸢尾花python朴素贝叶斯
时间: 2023-06-21 13:15:31 浏览: 107
朴素贝叶斯-鸢尾花.py
鸢尾花数据集是一个常用的分类问题数据集,可以用朴素贝叶斯分类算法进行分类。
以下是使用Python中的scikit-learn库实现朴素贝叶斯分类算法对鸢尾花数据集进行分类的代码示例:
```python
from sklearn.datasets import load_iris
from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 加载鸢尾花数据集
iris = load_iris()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.3, random_state=0)
# 创建朴素贝叶斯分类器
gnb = GaussianNB()
# 训练模型
gnb.fit(X_train, y_train)
# 预测
y_pred = gnb.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f"朴素贝叶斯分类鸢尾花数据集的准确率为: {accuracy:.2f}")
```
输出结果为:
```
朴素贝叶斯分类鸢尾花数据集的准确率为: 0.98
```
以上代码中,我们首先使用`load_iris()`函数加载鸢尾花数据集,然后使用`train_test_split()`函数将数据集划分成训练集和测试集。接着,使用`GaussianNB()`函数创建基于高斯分布假设的朴素贝叶斯分类器,并使用`fit()`方法对模型进行训练。最后,使用`predict()`方法对测试集进行预测,并使用`accuracy_score()`函数计算分类准确率。
阅读全文