I'm trying to find a way to automatically detect the start/end of the 4 seasons based on a time series of daily mean temperature.

According to this paper summer and winter can be defined as (smoothed) mean temperature being higher or lower than the 75th and 25th percentiles, respectively. These are obviously arbitrary threhsolds, but they seem to work pretty well in many papers I've seen. However when I'm trying to reproduce the results I have two main issues:

  • the 3rd order polynomial fit is not continous at the boundaries, so I used a more precise spectral filter
  • sometimes the smoothed temperature does not pass the thresholds, making it hard to identify the season

This figure shows an example of one of these years

enter image description here

As a result some winter season are too short

enter image description here

Is there a better way to retrieve seasons from this time series? I'm looking for something simple but little bit more complex than this method solely based on percentile thresholds. I was thinking about K-means clustering maybe...

  • 1
    $\begingroup$ I think daily mean temperature would not be the best predictor. You need to look at 12 hour intervals of daily maximum and minimum temperature. Plus change of wind direction could be a better predictor depening on where you live. $\endgroup$
    – gansub
    Oct 19 at 14:46


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Browse other questions tagged or ask your own question.