Re: Finding Significant Data Points in a Time Series



erikcw skrev:
Hi all,

I have a collection of ordered numerical data in a list (time series).
The numbers
when plotted on a line chart make a low-high-low-high-high-low (random)
pattern. I need an algorithm to extract the "significant" high and low
points from this data.

Here is some sample data:
data = [0.10, 0.50, 0.60, 0.40, 0.39, 0.50, 1.00, 0.80, 0.60, 1.20,
1.10, 1.30, 1.40, 1.50, 1.05, 1.20, 0.90, 0.70, 0.80, 0.40, 0.45, 0.35,
0.10]

In this data, some of the significant points include:
data[0]
data[2]
data[4]
data[6]
data[8]
data[9]
data[13]
data[14]
....

How do I sort through this data and pull out these points of
significance?

Thanks for your help!

Erik

An easy way is to just loop over each point and see if it's lower or
higher than both neighbors. If you want a better solution it would be
helpful with an idea of what is "significant" to you. In MATLAB for
instance you can do this:

find(diff(diff(data)>0))

ans =

2 4 6 8 9 10 13 14 15 17 18 19 20

Daniel

.



Relevant Pages