Hi. I have a correlation matrix 'x' which is of size 923x923 I need to remove variables that are highly correlated. I don't have a sophisticated way of selecting which of the two in a highly correlated pair to remove. I thought I would just go through each entry of the correlation matrix and if it is greater than 0.6 (or less than -0.6) I will remove that column and then redo the check from scratch with the matrix (where now the matrix has one less column). As a test, I tried if ((x >.2 || x<(-.2)) && col(x)!=row(x)) {x=x[,-col(x)]} but it does not remove any columns.
Also, I realized that I actually need to pull out the row that is associated with that variable as well, and so perhaps the section inside {} needs to be something like: {x=x[-col(x),-col(x)] Any idea on how to do this? Thank you. -- View this message in context: http://www.nabble.com/if-%28%28x-%3E.2-%7C%7C-x%3C%28-.2%29%29----%28col%28x%29%21%3Drow%28x%29%29%29-%7Bx%3Dx-%2C-col%28x%29-%7D-tp23440419p23440419.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.