给我一个数据集并在此数据集上做朴素贝叶斯问题代码实现
时间: 2024-10-09 17:06:10 浏览: 42
朴素贝叶斯分类器是一种基于概率的简单但强大的机器学习算法,它假设特征之间相互独立。我们可以使用Python的sklearn库来演示如何在一个数据集上应用朴素贝叶斯。这里我们以经典的鸢尾花数据集为例。
首先,你需要安装必要的库:
```bash
pip install pandas numpy sklearn
```
然后,使用`load_iris`函数加载鸢尾花数据集:
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.naive_bayes import GaussianNB
from sklearn.metrics import accuracy_score
# 加载数据集
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.2, random_state=42)
```
接着,创建并训练朴素贝叶斯模型:
```python
gnb = GaussianNB() # 使用高斯朴素贝叶斯模型
gnb.fit(X_train, y_train)
```
预测测试集结果:
```python
y_pred = gnb.predict(X_test)
```
最后,评估模型性能:
```python
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)
```
阅读全文