How can i see if the value occurs in an array for the first time?
1 次查看(过去 30 天)
显示 更早的评论
I have an array called loadp (50*1 double). I would like to see if the value occurs in the respective cell (loop) for the first time. If so, something should be executed. if the value has already occurred in the previous runs, the value should ignored.
for i=1:numRows;
%tmp = regexp(my_strings(i),'(?<=_l)\d+','match','once');
%loadp(i,1) = str2double(tmp)
condition=any(diff(sort(loadp(i,1))) == 0)
if condition==0
%do something
sadasd=2313
else
%do nothing
ssd=213123
end
end
3 个评论
采纳的回答
Tommy
2020-5-26
Try one of these.
condition = ~ismember(loadp(i),loadp(1:i-1));
% or
condition = find(loadp==loadp(i),1) == i;
They should both check if i is the first index in loadp which contains loadp(i). I'm not sure which is better, or if some other way would beat both.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!