Assessing peaks in time series of cell signal data I am measuring for the existence of response in cell signal measurements. What I did was first apply a smoothing algorithm (Hanning) to the time series of data, then detect peaks. What I get is this:

If I wanted to make the detection of the response a bit more objective than "yeah you see a raise in the continuous drop", what would be the best approach? Is it to get the distance of the peaks from a baseline determined by linear regression?
(I am a python coder and have almost no understanding of statistics)
Thank you
 A: So it sounds like from your October 25th comment that you are interested in algorithmically finding and characterizing two main features: the initial response decay followed by a cycle of increased response and subsequent decay. I assume that the data are observed at discrete time intervals.
Here is what I would try:


*

*Use a routine like numpy.ma.polyfit to fit, say, a 4th degree polynomial through your data. This should account for the initial drop followed by the rise/drop, but smooth out the numerous but minor fluctuations. Hopefully this degree of polynomial would be flexible enough to fit other, similar series well. The main goal I think would be to get a function that accounts for the major pattern you are looking for.

*Use Python routines for computing the derivative of the polynomial function fit to the data. Example routines are scipy.misc.derivative and numpy.diff. You are looking for the time values where the 1st derivative is zero, indicating a possible local min or max of the function. A second derivative test could be used to confirm which point corresponds to a min or max. Presumably you will have three such points if the graph you showed is representative. Note that the sage project could be very valuable here.

*At this point you'll have the time values associated with 
a. the start of the initial decay
b. the start of the upswing
c. the start of the second decay
You can then do what you want analytically to assess the changes. 
It may be best to let the data speak for itself: across multiple series, when you apply this method, what is the typical size change at the upswing, when does it typically occur into the decay period, and how long does it last? And what does the distribution of this upswing look like in terms of where, how big, and how long? Knowing these statistics, you can better characterize a particular upswing as being within tolerance, with respect to where in time it occurs as well as it size and duration. The key from my understanding would be to easily identify where these changes are occurring. The rest of what I have described is straight-forward to calculate.
A: Here are some ideas but I off the top my head that just may work...
Derivatives:
If you take your array and subtract the elements from each other to get an array of one less points, but that's the first derivative. If you now smooth that and look for the sign change, that may detect your bump.
Moving averages:
Perhaps using 2 lagged (exponential or windowed) moving averages might reveal the large bump while ignoring the small one. Basically, the width of the smaller window moving average must be greater than the width of of the bumps you want to ignore. The wider EMA must be wider but not too wide to detect the bump.
You look for when they cross and subtract the lag (window/2) and that's an estimate where your bump is.
http://www.stockopedia.com/content/trading-the-golden-cross-does-it-really-work-69694/
Linear models:
Do a series of linear models of sufficient width that are several little bumps wide, let's say 100 points. Now loop thru the data set generating linear regressions on the X variable. Just look at the coefficient of X and see where the big sign change happened. That is a big bump.
The above is just conjecture is on my part and there are probably better ways of doing it.
