Repeated event in a array
1 次查看(过去 30 天)
显示 更早的评论
Hi there, I have a vector of size 10,000,000 x 1. The vector has inputs of 1 0 and -1 only. I want to find repeated events.
For instance 1 1 0 1 1 -1 -1 1 , I want to test if this exact same elements have appeared again in the data.
If so I would like a graph to represent the whole data plus the pattern in a colour.
Looking forward to a answer. Thanks.
2 个评论
Jan
2012-5-4
The question is not clear.
Your input is in = [1 1 0 1 1 -1 -1 1];
What is the wanted output? What are "repeated events"? What kind of graph do you want? For a suggestion how to draw a pattern in color, we have to knwo, what a "pattern" is in your case.
采纳的回答
Daniel Shub
2012-5-4
Processing your example
A = [1 0 1 0 1 1 1 -1 -1 1 0 1 0 1 0 -1 -1];
x = [1 0 1 0];
with Loren's method would give
[1 10 12]
This can then be plotted with
stem(A);
hold on;
arrayfun(@(n)stem((0:3)+n, A((0:3)+n),'r'), [1, 10, 12]);
更多回答(1 个)
Jan
2012-5-4
Are you looking for neighboring elements with equal values? Then use diff. Are you looking for a specific patter, use strfind(data, [1 1 0 1 1 -1 -1 1]).
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Discrete Data Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!