finding duplicate number and adjacent row value
1 回表示 (過去 30 日間)
古いコメントを表示
Suppose I have a matrix of values
v = [1 4; 1 5; 2 4; 2 4; 2 5; 2 5; 3 4; 3 7]
in column one the numbers are consecutive but with repetition, how can I find only the first numbers and corresponidng number in the other column, put them in a new matrix (v')? The new matrix should be like this from my example:
v'= [1 4; 2 4; 3 4]
I hope I am clear enough
Cheers
Sobhan
1 件のコメント
Azzi Abdelmalek
2012 年 9 月 16 日
編集済み: Azzi Abdelmalek
2012 年 9 月 16 日
what if v= [1 4; 1 5; 2 4; 2 4; 2 5; 2 5; 3 4; 3 7;1 5;1 6]?
採用された回答
Azzi Abdelmalek
2012 年 9 月 16 日
v = [1 4; 1 5; 2 4; 2 4; 2 5; 2 5; 3 4; 3 7]
idx=diff(v(:,1))
v1=[];
if idx(1)==0
v1=[v1;v(1,:)]
end
for k=2:length(idx)
if idx(k)==0 & idx(k-1)~=0
v1=[v1; v(k,:)]
end
end
その他の回答 (1 件)
Wayne King
2012 年 9 月 16 日
編集済み: Wayne King
2012 年 9 月 16 日
[~,iv] = unique(v(:,1),'stable');
vnew = v(iv,:);
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!