identify duplicate entries of matrix and delete
2 次查看(过去 30 天)
显示 更早的评论
Hello,
I have an array as follows. I need to identify duplicate row values from column 1 to 5 and delete the row with negative 7th column element and keep the other row. For example, here row values 5 and 6:
1973 4 1 13 1,34 1,31 0,95 0,35
1973 4 2 2 1,17 1,14 0,85 0,29
1973 4 2 8 -0,5 -0,53 -0,81 0,28
1973 4 2 15 1,54 1,51 1,03 0,48
1973 4 2 18 1,82 1,79 1,03 0,76
1973 4 2 18 1,82 1,79 -0,54 2,33
1973 4 3 3 2,24 2,21 1,02 1,19
1973 4 3 15 1,73 1,70 1,15 0,54
The resulting matrix
1973 4 1 13 1,34 1,31 0,95 0,35
1973 4 2 2 1,17 1,14 0,85 0,29
1973 4 2 8 -0,5 -0,53 -0,81 0,28
1973 4 2 15 1,54 1,51 1,03 0,48
1973 4 2 18 1,82 1,79 1,03 0,76
1973 4 3 3 2,24 2,21 1,02 1,19
1973 4 3 15 1,73 1,70 1,15 0,54
Any help?
0 个评论
采纳的回答
Star Strider
2017-10-13
Assigning your matrix to variable ‘M’, this should do what you want:
[~,idx] = unique(M(:,1:5), 'rows', 'stable');
Result = M(idx,:);
4 个评论
更多回答(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!