Unique an Array based on one of the columns

I have a table bellow with more than 1000 rows:

The table has six columns. I want to remove the repeated rows with consideration of "Email" column. In another hand, if ithe eamil presents in one row is the same as the email presents in another row, just keep one of these repeated rows (I prefer to keep the last row). How can I do this?

4 Comments

That's not the attachment we need. We need a .mat file with your variable inside it.
If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
Attached please find "mat" format of the file.
splitapply(@unique ) with the group determined by the email column (might need findgroups)
This command " RR_new= unique(RR.Email) " return a unique table with only one column (email). I need the whole six columns.

Sign in to comment.

 Accepted Answer

Walter Roberson
Walter Roberson on 29 Apr 2023
Moved: Image Analyst on 30 Apr 2023
In summary: use the second output of unique() to get the list of indices of table rows to index the table by.
You would not be applying unique to the Email -- you would be applying findgroups() to the email to get the grouping variable for splitapply

2 Comments

Thanks a lot.
If this Answer solves your original question, then could you please click the "Accept this answer" link to award the answerer with "reputation points" for their efforts in helping you? They'd appreciate it. Thanks in advance. 🙂 Note: you can only accept one answer (so pick the best one) but you can click the "Vote" icon for as many Answers as you want. Voting for an answer will also award reputation points.

Sign in to comment.

More Answers (0)

Categories

Tags

Community Treasure Hunt

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

Start Hunting!