I have a large collection of time series - measurements taken every 15 minutes (96 measurements in a day) over the span of 1 year at various different locations.
I've broken up each time series into 365 separate smaller time series, 1 for each day of the year. Looking at these time series, there are certainly many distinct shapes for a single day. Some look sinusoidal, some are constant, some look like a random stochastic process, some look parabolic, and some look like U's.
What I would like to do is use an algorithm that can find these common shapes. I thought about clustering, and using the cluster centroids to define common shapes, but wanted to check with the community if this is right. So far, I've looked at Dynamic Time Warp as a metric, but it seems like that metric requires a lot of computation. I've also found
http://mox.polimi.it/it/progetti/pubblicazioni/quaderni/13-2008.pdf from SE.
I also saw Is it possible to do time-series clustering based on curve shape? but this question was from 2010 and might be outdated.
Another idea I had was to take eigendecompositions of matrices that were formatted as:
Matrix $M_i$ is a matrix of all time series observed on day $i$. Every row of matrix $M_i$ is a time series of length 96. Then, I would do 365 eigendecompositions, and use the eigenvectors as common shapes. Does this sound reasonable?
Thanks!