I have a data set composed of changes in financial asset prices. Because they are on different levels, e.g., one asset is trading in the 100s, the other in the 5s, the change their prices have vastly different levels. I scaled the data by subtracting the mean and dividing by the standard deviation for each time-series. The result is running PCA using correlation matrix. Is there a way to recoup the original measurement (i.e., $change) from the PCA on correlation matrix?
1 Answer
As stated, the answer to your question is just no. That is, if one is given just the correlation matrix or even the scaled data , one cannot figure out the original data. That is because there is not a unique data set that will give you the scaled values. For example if two data sets differ only by having different means, then they will scale to the same set. Similarly if one takes the data set and multiplies every element by a (non-zero) constant, one has changed the standard deviation of the data, but that will be lost upon scaling. Since there is not a unique data set that will give one the scaled data set, there is no way to recover the original data if one is only given the scaled data. Additionally in finance, it is standard to look at log returns rather than scaled data. This also will give a data set that accounts for stocks having different 'sizes'.