怎么通过读取一个csv文件的数据作为训练集,一个csv文件作为测试集,放入高斯朴素贝叶斯分类器中进行预测,并输出样本标签和预测标签名字
时间: 2024-02-17 22:00:48 浏览: 104
python实现朴素贝叶斯算法
5星 · 资源好评率100%
好的,我可以帮你解决这个问题。这里提供一个Python示例代码,使用scikit-learn库中的高斯朴素贝叶斯分类器进行训练和预测:
``` python
import pandas as pd
from sklearn.naive_bayes import GaussianNB
# 读取csv文件作为训练集
train_data = pd.read_csv('train.csv')
# 读取csv文件作为测试集
test_data = pd.read_csv('test.csv')
# 分离特征和标签
train_features = train_data.iloc[:, :-1]
train_labels = train_data.iloc[:, -1]
test_features = test_data.iloc[:, :-1]
test_labels = test_data.iloc[:, -1]
# 创建高斯朴素贝叶斯分类器
gnb = GaussianNB()
# 在训练集上训练分类器
gnb.fit(train_features, train_labels)
# 在测试集上进行预测
pred_labels = gnb.predict(test_features)
# 输出样本标签和预测标签名字
for i in range(len(test_labels)):
print('样本标签: {}, 预测标签: {}'.format(test_labels[i], pred_labels[i]))
```
在代码中,首先使用pandas库中的read_csv函数读取训练集和测试集的csv文件,然后使用iloc函数分离特征和标签。接着,使用scikit-learn库中的GaussianNB类创建高斯朴素贝叶斯分类器,并在训练集上进行训练。最后,使用predict方法对测试集进行预测,并输出样本标签和预测标签名字。
阅读全文