Remove dulpicate rows of cell array

4 ビュー (過去 30 日間)
Christos Traianos
Christos Traianos 2021 年 12 月 9 日
編集済み: Awais Saeed 2021 年 12 月 9 日
Hi,
i need to remove duplicated rows of cell array and keep the row only one time.
For example from array 3x5:
{'800AL'} {'800AL'} {'800AL'} {'800AL'} {'800AL'}
{'700AL'} {'700AL'} {'700AL'} {'700AL'} {'700AL'}
{'800AL'} {'800AL'} {'800AL'} {'800AL'} {'800AL'}
i would like to keep a table with dimension 2x5:
{'800AL'} {'800AL'} {'800AL'} {'800AL'} {'800AL'}
{'700AL'} {'700AL'} {'700AL'} {'700AL'} {'700AL'}
I tried the unique function but i can't keep the whole row.
Any idea on that?
Thanks in advance
  1 件のコメント
Dyuman Joshi
Dyuman Joshi 2021 年 12 月 9 日
You can use for loops to compare rows using isequal and delete the duplicate rows.

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

回答 (1 件)

Awais Saeed
Awais Saeed 2021 年 12 月 9 日
編集済み: Awais Saeed 2021 年 12 月 9 日
C = {{'800AL'} {'800AL'} {'800AL'} {'800AL'} {'800AL'}
{'700AL'} {'700AL'} {'700AL'} {'700AL'} {'700AL'}
{'800AL'} {'800AL'} {'800AL'} {'800AL'} {'800AL'}};
cell2str = string(C); % convert cell to string
unique(cell2str, 'rows', 'stable')
ans = 2×5 string array
"800AL" "800AL" "800AL" "800AL" "800AL" "700AL" "700AL" "700AL" "700AL" "700AL"

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by