How to identify partial string duplicates in a table

2 visualizzazioni (ultimi 30 giorni)
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!

Risposte (1)

Stephen23
Stephen23 il 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 Commenti
David Mabwa
David Mabwa il 28 Nov 2020
Modificato: David Mabwa il 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 il 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.

Accedi per commentare.

Categorie

Scopri di più su Get Started with MATLAB in Help Center e File Exchange

Prodotti


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by