how to compare a vector with a column of a matrix?

2 Ansichten (letzte 30 Tage)
Apurva Jariwala
Apurva Jariwala am 20 Mär. 2019
Beantwortet: Apurva Jariwala am 20 Mär. 2019
I designed a simple decision tree to work on the Iris data set, with two values for input: petal width and petal length, and one output: versicolor or virginica (only these samples were taken) I want to measure the accuracy of each class and for that I am trying to compare the output of my tree to the species column of the iris dataset. Please let me know what changes can I do to the code:
Totalsamples = size(Petal_length,1);
predictedclass=[];
for i=51:Totalsamples
if Petal_length(i) < 4.8 && Petal_width(i) < 1.7
clspred = 2;
else
clspred = 3;
end
predictedclass = [predictedclass; clspred];
end
truepred2 = [];
for j = 1:50
if predictedclass(j) == 2
tpred = 2;
end
truepred2 = [truepred2; tpred];
end
truepred3 = [];
for l = 51:100
if predictedclass(l) == 3
tpred3 = 3;
end
truepred3 = [truepred3; tpred3];
end
Reqdsamples = [versicolor; virginica];
truelabel = Reqdsamples(:,5);
cpt = classperf(truelabel,predictedclass);
accuracy_for_versicolor = size(truepred2,1)/size(versicolor,5);
accuracy_for_virginica = size(truepred3,1)/size(virginica,5);
disp(cpt.correctrate)
  2 Kommentare
Kevin Phung
Kevin Phung am 20 Mär. 2019
Bearbeitet: Kevin Phung am 20 Mär. 2019
any chance you can provide numerical examples to help convey your question?
'Please let me know what changes can I do to the code:'
are you asking if your code can be improved, or are you trying to do something that you do not know how to do? or both?
Apurva Jariwala
Apurva Jariwala am 20 Mär. 2019
I am trying to find the accuracy of the classification for versicolor and virginica classes individually. The code that I used is not able to do so. I tried using a for loop but it was still not working.
I just need to find the accuracy individually for each class. I need some help doing that

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Apurva Jariwala
Apurva Jariwala am 20 Mär. 2019
Totalsamples = size(Petal_length,1);
predictedclass=[];
for i=51:Totalsamples
if Petal_length(i) < 4.8 && Petal_width(i) < 1.7
clspred = 2;
else
clspred = 3;
end
predictedclass = [predictedclass; clspred];
end
Reqdsamples = [versicolor; virginica];
truelabel = Reqdsamples(:,5);
cpt = classperf(truelabel,predictedclass);
cmat = confusionmat(truelabel,predictedclass);
trueclas=[];
trueclas = diag(cmat);
Nos = size(truelabel, 1)/2;
accuracy_for_versicolor = trueclas(1)/Nos;
accuracy_for_virginica = trueclas(2)/Nos;
disp(cpt.correctrate)

Weitere Antworten (0)

Kategorien

Mehr zu Deep Learning Toolbox finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by