如何使文本数据与贝叶斯分类相匹配

2024-04-20 11:08:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用sciket学习库的NaiveBayes分类器,根据一些二进制变量对文本进行分类

X_train-训练数据

y_train-训练标签

两者都属于“系列”类型

NB_classifier = naive_bayes.MultinomialNB(alpha = 0.1)
NB_classifier.fit(X_train, y_train)

然后我得到一个错误,说分类器不接受字符串值

could not convert string to float:

在这个论坛上提到一个类似的问题时,我了解到我们应该使用LabelEncoder对字符串进行编码 所以我做了以下的事情

le = preprocessing.LabelEncoder()
le.fit(X_train)

NB_classifier = naive_bayes.MultinomialNB(alpha = 0.1)

NB_classifier.fit(le.transform(X_train), y_train)

然后我得到了以下错误

Found input variables with inconsistent numbers of samples:...

我已经尝试过将X_trainy_train重塑为矩阵

任何帮助都将不胜感激


Tags: 字符串alphale分类器错误trainfitnb