Operands to the || and && operators must be convertible to logical scalar values.
2 次查看(过去 30 天)
显示 更早的评论
cl=input('Enter class ( up-1 or down-2 or blink-3): ');
if cl==1
[k,~]=find((all_peak(:,2)>0)&&((all_peak(:,2)<p1_peak(:,2))))
% % [k,~]=find(all_peak(:,2)<0);
ch_n='up';
elseif cl==2
[k,~]=find(all_peak(:,2)<0);
% % [k,~]=find((all_peak(:,2)>0)&&((all_peak(:,2)<allnew_peak(;,2)));
ch_n='down';
else
[k,~]=find(all_peak(:,2)>0);
ch_n='blink';
end
where all_peak =[16,2] matrix , p1_peak =[12,2 ] matrix , allnew_peak=[12,2] matrix. i am getting error. Operands to the || and && operators must be convertible to logical scalar values. how to solve it ?
3 个评论
Walter Roberson
2019-10-13
Okay, so when you get to all_peak(13,2) then what should it be compared to in p1_peak ?
回答(1 个)
Fabio Freschi
2019-10-13
If you work with arrays, use the single & and not &&
2 个评论
Fabio Freschi
2019-10-13
编辑:Fabio Freschi
2019-10-13
So you are comparing arrays of different dimensions. Look at Walter’s comment
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 String Parsing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!