Finding a redundant pattern in a matrix
3 views (last 30 days)
Show older comments
Hi,
I'm trying to compare a serie of number in a matrix of cells to see if some pattern are redondant.
The issue is that the pattern needs to be in the same order but it can be broken by another number.
For example : C1=[ 5 9 3]; C2=[ 9 5 3]; C3=[9 5 9 3]; C4=[5 9 8 3]; ...
In this case, I want to know that the pattern in C1 is repeated in C3 and C4 ... then do the same for C2.
Thanks for your help
Anna
1 Comment
Image Analyst
on 26 Jan 2023
Edited: Image Analyst
on 26 Jan 2023
What's the use case (context as to why that is needed)? Have you tried a brute force search via a nested for loop? That would be pretty simple and fast for short vectors.
Accepted Answer
Walter Roberson
on 26 Jan 2023
C1=[ 5 9 3]; C2=[ 9 5 3]; C3=[9 5 9 3]; C4=[5 9 8 3]; C5 = [5 3 9 8];
is_in(C1, C2)
is_in(C1, C3)
is_in(C1, C4)
is_in(C1, C5)
function match = is_in(looking_for, in_what)
match = all(any(triu(looking_for.' == in_what),2));
end
More Answers (0)
See Also
Categories
Find more on Data Type Identification in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!