Cross Validated is a question and answer site for people interested in statistics, machine learning, data analysis, data mining, and data visualization. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have some raw data that comes from a simulation. I take the sample points, and produce a moving average variable, and plot it against time. So imagine a signal that has peaks and valleys. The peaks represent periods of high activity, and the valleys represent periods of low activity.

What filter can I apply to this data to report the windows of high activity? We can assume that the windows do not overlap.

EDIT: The words "what filter can I apply" are not used correctly. I am not looking for a "filter". I am looking for a technique to find the windows. I start with the data, and all I want to do is find where the interesting windows of high activity are, so I can analyze them. You could say "just look at them", but I'm dealing with many data sets so that doesn't scale.

share|improve this question

migrated from Feb 26 '13 at 2:37

This question came from our site for people studying math at any level and professionals in related fields.

up vote 1 down vote accepted

Edited based on clarification above:

Segmenting the signal into windows can be done easily in Matlab for example, using the buffer function to segment the signal into windows. The function medfilt1 will median filter the signal if you would like to smooth it prior to windowing and calculating the mean per window (epoch).

If you are interested in characterizing the activity in each window, then you can calculate summary statistics across all the samples in each window; such as mean, standard deviation or other more sophisticated measures. From your description, periods with high activity will have higher variance. This might manifest as higher mean amplitude values per window or larger standard deviation of the amplitude values per window. You would then store the indices of each 'high activity' window to allow further analysis.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.