strcmp not working correctly

1 view (last 30 days)
Haziq Razali
Haziq Razali on 11 Jul 2019
Edited: madhan ravi on 11 Jul 2019
I have 2 datas. behaviours_currframe.ID and label.
behaviours_currframe.ID =
3×1 cell array
{'pedestrian4'}
{'ped2' }
{'ped3' }
label =
'pedestrian4'
I am trying to do strcmp
mask = strcmp({behaviours_currframe.ID}, label);
mask
But why is the output
mask =
logical
0
Why is it 0 ? There is one item in behaviours_currframe.ID that is similar to label.

Answers (2)

Aiswarya Subramanian
Aiswarya Subramanian on 11 Jul 2019
Edited: madhan ravi on 11 Jul 2019
Hello,
You can use the following syntax instead:
behaviours_currframe.ID = {'pedestrian4' ,'ped2' ,'ped3'};
label = 'pedestrian4';
mask = strcmp(label, behaviours_currframe.ID);
disp(mask);
Hope this helps!!

Alex Mcaulley
Alex Mcaulley on 11 Jul 2019
Edited: Alex Mcaulley on 11 Jul 2019
The problem is in your call to strcmp:
behaviours_currframe.ID = {'pedestrian4','ped2', 'ped3'};
label = 'pedestrian4';
mask = strcmp(behaviours_currframe.ID, label)
mask =
1×3 logical array
1 0 0

Tags

Community Treasure Hunt

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

Start Hunting!