您的位置:首页 > 其它

《机器学习》周志华 习题答案7.3

2016-07-05 14:55 246 查看
  运用贝叶斯方法对西瓜数据集进行分类,同理代码如下:


file1=open('c:\quant\watermelon.csv','r')
data=[line.strip('\n').split(',')forlineinfile1]
data=np.array(data)
X=[[float(raw[-7]),float(raw[-6]),float(raw[-5]),float(raw[-4]),float(raw[-3]),float(raw[-2])]forrawindata[1:,1:-1]]
#X=[[float(raw[-3]),float(raw[-2])]forrawindata[1:]]
y=[1ifraw[-1]=='1'else0forrawindata[1:]]
X=np.array(X)
y=np.array(y)

fromsklearnimportdatasets
iris=datasets.load_iris()
fromsklearn.naive_bayesimportGaussianNB
gnb=GaussianNB()
y_pred=gnb.fit(X,y).predict(X)
print("Numberofmislabeledpointsoutofatotal%dpoints:%d"
%(X.shape[0],(y!=y_pred).sum()))
printy
printy_pred



结果如下:Numberofmislabeledpointsoutofatotal17points:2

[11111111000000000]
[11111101000000100]

如果选取的属性过小,则分类的错误率会增加。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: