Find non unique string in a table

Hi!
I have a table "TT" which I want to return the "Ticket" of non unique string in the "Alpha".
TT =
8×2 table
Ticket Alpha
_______ ________
29991 AB'
29991 CD'
29993 EF'
30018 GH'
30066 IJ'
30105 KL'
30105 EF'
30107 NO'
here EF in not unique under "Alpha" and I want to return "30105". How can i do this?

 採用された回答

Adam Danz
Adam Danz 2019 年 8 月 6 日
編集済み: Adam Danz 2019 年 8 月 8 日

1 投票

nonUnqIdx is a logical index of rows of TT.Alpha that are a repeat (ie, not the first instance).
[~, AlphaGroups] = ismember(TT.Alpha, unique(TT.Alpha,'stable')); % identify groups
nonUnqIdx = [1;diff(AlphaGroups)] < 1;
% Tickets for all non-unique (ie repeat) strings in Alpha
TT.Ticket(nonUnqIdx)

その他の回答 (2 件)

Sean de Wolski
Sean de Wolski 2019 年 8 月 8 日

1 投票

n = groupcounts(T.Alpha)
[~, last] = unique(T.Alpha, 'last')
T.Ticket(last(n>1))
Using the "new and shiny" groupcounts.
Sonima
Sonima 2019 年 8 月 9 日

0 投票

T.Ticket(groupcounts(T.Alpha)>1)

カテゴリ

ヘルプ センター および File ExchangeTables についてさらに検索

タグ

質問済み:

2019 年 8 月 6 日

回答済み:

2019 年 8 月 9 日

Community Treasure Hunt

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

Start Hunting!

Translated by