How to remove duplicate rows from a matrix?

I am running simulations with 5 inputs and 4 outputs for 1000 iterations. The results are stored in a 1000x9 Matrix. Lets name this 'Results'. Each of the rows correspond to one iteration. The first 5 columns in each row correspond to the input values and the last four columns in each row are the ouputs.
I need to remove the rows from the matrix which have the same input conditions. So for any 2 rows, say i and j
Results(i,1)==Results(j,1) && Results(i,2)==Results(j,2) && Results(i,3)==Results(j,3) && Results(i,4)==Results(j,4) && Results(i,5)==Results(j,5)
I have to remove either row i or row j
I would appreciate any and all help :)

 采纳的回答

[~,b,c] = unique(Results(:,1:5),'rows','stable');
out = Results(b(histcounts(c,1:numel(b)+1) == 1),:);

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Mathematics 的更多信息

产品

版本

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by