朴素贝叶斯经典实例代码
时间: 2024-11-05 09:04:55 浏览: 72
朴素贝叶斯是一种基于贝叶斯定理的分类方法,它假设特征之间相互独立。朴素贝叶斯算法在处理文本分类、垃圾邮件过滤等问题上表现优秀。下面是一个使用Python和scikit-learn库实现朴素贝叶斯分类器的经典实例代码:
```python
from sklearn.model_selection import train_test_split
from sklearn.naive_bayes import GaussianNB
from sklearn import metrics
import pandas as pd
# 假设你有一个名为 'dataset.csv' 的数据集,其中包含特征和目标变量
df = pd.read_csv('dataset.csv')
# 分离特征和目标变量
X = df.drop('target', axis=1)
y = df['target']
# 将数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 创建朴素贝叶斯分类器实例
gnb = GaussianNB()
# 训练模型
gnb.fit(X_train, y_train)
# 对测试集进行预测
y_pred = gnb.predict(X_test)
# 评估模型性能
print("Accuracy:", metrics.accuracy_score(y_test, y_pred))
```
这段代码首先从数据集中分离出特征和目标变量,然后将数据集划分为训练集和测试集。接着,创建一个朴素贝叶斯分类器实例并使用训练数据对其进行训练。最后,使用测试数据对模型进行评估,输出模型的准确率。
请注意,这只是一个简单的示例,实际应用中可能需要对数据进行预处理(如特征缩放),并可能需要调整模型的参数以优化性能。此外,对于非数值型数据,可能需要使用其他类型的朴素贝叶斯分类器(如多项式朴素贝叶斯)。
阅读全文