Merge rows with similar names

Hi,
I have a table consisting of ten columns. In the first column, each row has a unique name. However, many rows have the same starting four letters. I would like to merge the rows with the same starting letters, and perform some calculations based on these rows.
Thanks in advance!

3 Comments

Stephen23
Stephen23 on 22 Oct 2021
Edited: Stephen23 on 22 Oct 2021
What does "merge" mean: do you want to sum values, or take the average, or the mode, or concatenate them into vectors?
Why do you specifically need to "merge" the rows, from what you describe it sounds like you should probably process your data using the standard table methods:
I mean concatenate. I.e. to group the into the same rows, or vectors. I know how to do it if I had the same row names all over, however, it is only in the beginning the row names are the same.
Thanks Stephen
@Vlatko Milic, you keep forgetting to attach your data in a .mat file with the paperclip icon. Here's another chance to read the posting guidelines:

Sign in to comment.

 Accepted Answer

Hey Vlatko,
It's my understanding that you want to group/merge rows with similar names. The criteria for 'similarity' is that they must have the same first 4 letters. You also mention that you know how to merge/group these rows when using complete row names for judging similarity, but are facing issues while merging using only a subset of the row name.
Here is a code snippet using which you can identify which rows are similar, using only the first 'n' letters. This will provide you with a number (say group number) for every row. 'Similar' rows would have the same number You can then merge them using your custom code.
A = ["Pizza", "Hello", "Hellbound", "Yesterday", "Yesss", "Yesman"]; % your first column
n = 3; %number of initial alphabets to consider
A2 = extractBetween(A(:), 1, n);
A_groups = unique(A2);
[~,A_groupNum] = ismember(A2, A_groups) %this will assign a number to every row. Similar rows would have the same number
Hope this helps!

1 Comment

Hi Pranjal,
That is exactly what I was looking for. Thanks a lot for your thorough answer and your time.
Kind regards

Sign in to comment.

More Answers (0)

Products

Release

R2020b

Community Treasure Hunt

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

Start Hunting!