How to identify partial string duplicates in a table

2 vues (au cours des 30 derniers jours)
David Mabwa
David Mabwa le 28 Nov 2020
Modifié(e) : David Mabwa le 28 Nov 2020
Hi,
I have a table of strings - see attached, and I want to be able to programatically identify and extract the identical part of the strings within that table.
For example, in the attached mat. the strings are:
'*EndoPart*' and '*EndoCort*'
Is there a way to identify the identical portion of the string ('Endo') in the entire column and extract it?
Thank you!

Réponses (1)

Stephen23
Stephen23 le 28 Nov 2020
Actually the identical part at the start of the string is '*Endo', and this is easy to find:
>> X = logical(cumprod(all(diff(TableExample.group,1,1)==0,1)));
>> TableExample.group(1,X)
ans =
*Endo
There is also an identical part at the end of the string 'rt*', but I assume that you only want the identical part at the start.
  2 commentaires
David Mabwa
David Mabwa le 28 Nov 2020
Modifié(e) : David Mabwa le 28 Nov 2020
Yes I am only interested in the identical part at the start.
Thank you, it worked like a charm on the table example.
I however tried on my data and I keep getting this error:
"Check for missing argument or incorrect argument data type in call
"to function 'diff'
I have attached my table. I'm not sure what I am doing wrong.
% The code I run is identical and the datatype is the same.
% Might you have any idea whats going wrong here?
X = logical(cumprod(all(diff(TableExample2.group,1,1)==0,1)));
Thanks again
Stephen23
Stephen23 le 28 Nov 2020
@David Mabwa : I don't think I can open that table with the MATLAB versions I have available to me.
Perhaps someone else might be so kind as to investigate this further.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Get Started with MATLAB dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by