实例:水质评价分类-支持向量机(R语言)

1、数据划分。

对样本进行抽样,抽取80%作为训练样本,剩下的20%作为测试样本。

2、建模

traindata = read.csv("trainData.csv")

head(traindata)

输出结果如下:

traindata = transform(traindata,class = as.factor(class)) #将class列转换为factor类型

library(e1071)
svm.model = svm(class~.,traindata[,-2]) #支持向量机分类模型

confusion = table(traindata$class,predict(svm.model,traindata,type="class")) #建立混淆矩阵
confusion

accuracy = sum(diag(confusion))*100/sum(confusion) #计算分类准确率
accuracy

输出结果如下:

3、模型测试

testdata = read.csv("testData.csv")

confusion = table(testdata$class,predict(svm.model,testdata,type="class"))
confusion

accuracy = sum(diag(confusion))*100/sum(confusion)
accuracy

输出结果如下:

从结果可知,分类准确率为92.3%,说明模型的分类效果较好。

猜你喜欢

转载自blog.csdn.net/zjlamp/article/details/81669833
今日推荐