无法识别sk学习中的朴素贝叶斯功能

时间:2016-10-21 10:49:58

标签: python

使用以下代码,我尝试加载数据集并对其执行NB算法。

from sklearn.naive_bayes import MultinominalNB 
import pandas as pd
import numpy as np

data = pd.read_csv('spambase.data.txt').as_matrix()
np.random.shuffle(data)

x = data[:, :48]
y = data[:, -1]

Ytrain = x[:-100,]
Ytrain = y[:-100,]
Xtest = x[-100:,]
Ytest = y[-100:,]

model = MultinominalNB()
model.fit(X.train, Y.train)

print "Classification rate for NB: "

但是,当我尝试运行它时会出现以下错误:

python sample.py

Traceback (most recent call last):
File "sample.py", line 1, in <module>
from sklearn.naive_bayes import MultinominalNB
ImportError: No module named sklearn.naive_bayes

对这里出了什么问题的想法?

打印数据

2 个答案:

答案 0 :(得分:1)

你有一个错字,试试:

from sklearn.naive_bayes import MultinomialNB

答案 1 :(得分:0)

我在安装sklearn和scikit时遇到了同样的问题 - 通过pip学习。

我通过以下步骤解决了问题

  1. pip uninstall sklearn(如果已安装)
  2. pip uninstall scikit-learn(如果已安装)
  3. git clone scikit-learn
  4. cd scikit-learn
  5. python setup.py install
  6. 希望这会对你有所帮助。