Hi, I am currently using the 'findpattern' function (which can be found here ) to find patterns in temperature data.
e.g. find the index when temperature was at 10 degrees for 2 hours. in this case my pattern would be [10 10 10 10 ...] and findpattern.m would find the index in the start value. My temperature data was taken every 5 min which dictates the length of the pattern.
I would like to have a range of temperatures instead of 1 value i.e. find the locations when temperature was anywhere between 9 and 11 degrees for 2 hours.

댓글 수: 2

Stephen23
Stephen23 2018년 1월 26일
@Connor O'Higgins: what is your question?
Connor O'Higgins
Connor O'Higgins 2018년 1월 26일
Sorry, that wasn't well explained
I need to find the locations in my temperature data where the temperature has been steady for several hours.
However, this temperature should be in a range i.e. 9 to 11 degrees.

댓글을 달려면 로그인하십시오.

 채택된 답변

Guillaume
Guillaume 2018년 1월 26일

0 개 추천

%T: temperature vector
%desiredduration: number of samples where temperature must be between 9 and 11
inrange = T>=9 & T<= 11;
transitions = diff([false; inrange; false]); %find where the temperature change between in range/not in range occur
inrangestarts = find(transitions == 1);
inrangeends = find(transitions == -1);
inrangeduration = inrangeends - inrangestarts; %may be off by 1. Check
locs = inrangestarts(inrangeduration > desiredduration)

댓글 수: 1

Connor O'Higgins
Connor O'Higgins 2018년 1월 29일
Thanks Guillaume, That does the job. The 'inrangeduration' did need a +1 like you said.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Image Analyst
Image Analyst 2018년 1월 26일

0 개 추천

Attach your data or image. If you have a known pattern you're looking for, rather than trying to guess at patterns and finding some pattern that might be repeated somewhere, then you can use normxcorr2(). A demo is attached.

카테고리

도움말 센터File Exchange에서 Elementary Math에 대해 자세히 알아보기

질문:

2018년 1월 26일

댓글:

2018년 1월 29일

Community Treasure Hunt

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

Start Hunting!

Translated by