Invalid types for comparison.

load Group_Test
load labelIdx.mat
[c,cm,ind,per] = confusion(Group_Test1,labelIdx);
figure
cm = confusionchart(cm);
cm.ColumnSummary = 'column-normalized';
cm.RowSummary = 'row-normalized';
cm.Title = 'HOG Confusion Matrix';
Error using == (line 25)
Invalid types for comparison.
Error in confusion (line 45)
if ~all((targets==0) | (targets==1) | isnan(targets))
Error in Bysian_rule (line 3)
[c,cm,ind,per] = confusion(Group_Test1,labelIdx);
knowing that:
Group_Test 788x1 categorical
labelIdx.mat 788x1 categorical

回答 (1 件)

Benjamin
Benjamin 2022 年 8 月 26 日

0 投票

Hello,
Without having your function 'confusion.m', or at least the concerned lines, it can be difficult to help.
But I think the error says that you can't compare a categorical value (targets) with a boolean (1 or 0).
Maybe convert target into logical first, like this
targets = logical(targets);
Let me know if it worked.
Regards,

カテゴリ

ヘルプ センター および File ExchangeAgriculture についてさらに検索

製品

リリース

R2019a

質問済み:

2022 年 8 月 25 日

回答済み:

2022 年 8 月 26 日

Community Treasure Hunt

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

Start Hunting!

Translated by