matlab数据分类算法
时间: 2023-11-20 16:56:58 浏览: 91
MATLAB提供了许多强大的数据分类算法,其中之一是支持向量机(Support Vector Machine,SVM)。SVM通过在数据空间中找到一个最优的超平面来将数据分割成不同的类别。下面是一个使用MATLAB实现SVM的示例代码:
```matlab
% 加载数据
load fisheriris
% 将数据分为训练集和测试集
cv = cvpartition(species,'HoldOut',0.3);
idx = cv.test;
% 训练SVM模型
Xtrain = meas(~idx,:);
Ytrain = species(~idx,:);
SVMModel = fitcsvm(Xtrain,Ytrain);
% 预测测试集
Xtest = meas(idx,:);
Ytest = species(idx,:);
[label,~] = predict(SVMModel,Xtest);
% 计算准确率
accuracy = sum(strcmp(label,Ytest))/length(Ytest);
disp(['Accuracy: ' num2str(accuracy)])
```
上述代码使用鸢尾花数据集作为示例数据,将数据分为训练集和测试集,训练SVM模型并预测测试集,最后计算准确率。
除了SVM,MATLAB还提供了许多其他的数据分类算法,例如k均值聚类、朴素贝叶斯分类器、决策树等等。
阅读全文