# Remove duplicate rows based on subset of row elements

37 ビュー (過去 30 日間)
Federico Maglione 2019 年 3 月 5 日
コメント済み: Vijay 2020 年 9 月 30 日
Hello everyone,
I tried to find a similar problem - relatively simple I believe - but I could not find a solution. If, for instrance, I have a matrix such as
A = [1 1 1 100; 2 2 2 200; 3 3 3 300; 1 1 1 500]
how can I remove from A the fourth row based on the fact that only the thee first elements of the that row are identical to the three elmenets in the first row?
Also, what if I have
A = [1 1 1 100; 2 2 2 200; 3 3 3 300; 1 1 1 500; 1 1 1 600]
and, again, I just want to keep the first row?

サインインしてコメントする。

### 採用された回答

madhan ravi 2019 年 3 月 5 日

A(unique(A(1:3),'rows'),:)

#### 5 件のコメント

madhan ravi 2019 年 3 月 5 日
[~,idx,~] = unique(A(:,1:3),'rows');
A(idx,:)
Federico Maglione 2019 年 3 月 5 日
Thank you! It works perfectly
Vijay 2020 年 9 月 30 日
Simple, but an excellent solution.

サインインしてコメントする。

### Community Treasure Hunt

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

Start Hunting!

Translated by