选择自己感兴趣的文本内容(中文/英文)利用朴素贝叶斯算法进行文本分类预测代码怎么写
时间: 2024-10-11 13:16:39 浏览: 25
朴素贝叶斯算法是一种基于概率统计的简单而强大的文本分类方法。在Python中,我们可以使用`scikit-learn`库来编写简单的朴素贝叶斯文本分类代码。以下是使用`CountVectorizer`处理文本数据并训练`MultinomialNB`模型的一个示例:
```python
# 导入所需库
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
from sklearn.model_selection import train_test_split
import pandas as pd
# 假设你有一个包含文本数据和标签的pandas DataFrame,名为df
data = df['text'] # 文本列
labels = df['label'] # 标签列
# 数据预处理(分词、去除停用词等)
vectorizer = CountVectorizer() # 分词器
X = vectorizer.fit_transform(data) # 将文本转换为向量
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, labels, test_size=0.2, random_state=42)
# 创建并训练朴素贝叶斯模型
model = MultinomialNB()
model.fit(X_train, y_train)
# 预测
y_pred = model.predict(X_test)
# 计算准确率
accuracy = model.score(X_test, y_test)
print(f"Accuracy: {accuracy}")
#
阅读全文