写一个FISHER鸢尾花运行出图的matlab代码
时间: 2023-06-25 13:05:10 浏览: 87
MATLAB做出鸢尾花数据集矩阵源代码.zip
5星 · 资源好评率100%
下面是一个简单的Fisher鸢尾花分类的Matlab代码,包含数据读取、数据预处理、模型训练和结果展示等步骤。
```matlab
%% Fisher鸢尾花分类
% 导入数据
data = readtable('fisheriris.csv');
X = table2array(data(:,1:4)); % 特征数据
Y = grp2idx(data(:,5)); % 标签数据
% 数据预处理
[X, mu, sigma] = zscore(X); % 标准化特征数据
% 模型训练
model = fitcdiscr(X,Y,'DiscrimType','linear'); % 线性判别分析
% 交叉验证
cvmodel = crossval(model);
loss = kfoldLoss(cvmodel);
% 预测
Y_pred = predict(model, X);
% 结果展示
figure;
gscatter(X(:,1), X(:,2), Y_pred);
title(['Fisher鸢尾花分类,误差率:', num2str(loss)]);
xlabel('Sepal length');
ylabel('Sepal width');
legend('setosa', 'versicolor', 'virginica');
```
运行该代码可以得到一个Fisher鸢尾花分类的散点图,如下图所示:
![Fisher鸢尾花分类散点图](https://i.imgur.com/2rDiXrT.png)
阅读全文