0

I have six UK inflation time series, starting from Jan 1990 and ending in June 2019. These series as standardized on an expanding window and subsequently forward filled. I use these series to run a PCA on an expanding window size (initial data has 1300 observations). I expand this window size every time by one day. For all these inflation series I compute the factor loading at every date (day) t. I plot the Factor loadings below:

Factor loading plots (1)

However, now I re-run the analysis and I switch the third column (time series 3) with the first column (time series 1). My factor loadings now behave totally different and I obtain jumpy sign reversals now. I show the new factor loadings below:

New Factor Loadings Plot

The time series stay the same. They start at the same time and do not contain missing values / NA's or whatever. I only switch the order of the columns.

My questions: 1) Why does the order of the columns impact the PCA Factor Loadings results? 2) How do I deal with such jumps in factor loadings and, especially, avoid them?

I am using the princomp command in R to determine the factor loadings. I hope someone can help me out, because I am really stuck on this matter.

amars96
  • 63
  • 1
  • 5
  • That post doesn't answer my first question, but thanks for your contribution. – amars96 Jun 27 '19 at 12:11
  • 1
    The sign of components is arbitrary. So it can be affected by arbitrary things, such as column order. – amoeba Jun 27 '19 at 12:38
  • 1
    This is why we insist on limiting each post to a single question: multiple questions that have already been answered (as in this case) lead to multiple duplicates, but pointing to multiple duplicates can be confusing. Because the sign chosen for each eigenvector is arbitrary, though, you can fully expect the signs to depend on arbitrary variations of input to the software--including the order of the variables. There is no universal rule; it depends on the software. – whuber Jun 27 '19 at 12:56
  • 1
    BTW, please don't flag comments as "not answering the question," because that's not what comments are for in the first place. Indeed, if a comment actually *does* answer a question, you should encourage its poster to put it into a real answer! – whuber Jun 27 '19 at 12:58

0 Answers0