Determining length of values in cell

1 次查看(过去 30 天)
Hi,
I have a single column cell with numbers between 1 - 5 (each allocated to a behaviour). This is used to plot a line graph so I can see what behaviour occured at each given time period. My question: Is there a way to extract features such as for Step it occurs when the behaviour "4" is represented on the line graph for greater than 700 data points. Is there a way I can do that?
And also determine how many times in the cell the behaviour changes. Not sure if this makes sense. Ask me to clarify otherwise.
Thanks
Katrina
  2 个评论
TADA
TADA 2019-2-5
can you share a small example to make it clearer?
Katrina Anderson
Katrina Anderson 2019-2-5
编辑:Katrina Anderson 2019-2-5
thankyou!
I will attach a screenshot of a small part of the graph:
possible_threshes = {'Standing', 'WS', 'PG', 'Step', 'LD'};
thresh_vals = [1, 2, 3, 4, 5]
[tf, idx] = ismember(testmodel2(:,1), possible_threshes);
Behaviourcoded(tf, 1) = num2cell( thresh_vals( idx(tf) ) );
and thats how I got to that.
As you can see in the graph. Around the 8 - that is one step not two. Because there is a very short segment of '4'.
Hope that makes more sense?
Thankyou!!

请先登录,再进行评论。

采纳的回答

KSSV
KSSV 2019-2-5
编辑:KSSV 2019-2-5
If A is your data...you can use logicals like ==, >, < etc..to find the locations. For example, if you want where 4 is present. If the data is in cell, you need to use flower braces: A{1} ....
idx = find(A==4) ;
  2 个评论
Katrina Anderson
Katrina Anderson 2019-2-6
so like this:
idx = find([Behaviourcoded{:}] == 4);
and how would I find the incidence of 4 appearing 700 data points or more consecutively. Is this possible?
Thankyou!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Networks 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by