Entering edit mode
11.2 years ago
deschisandy
▴
60
I have two gene correlation matrices A and B,
seed(1)
X <- data.frame(matrix(rnorm(2000), nrow=10))
Y <- data.frame(matrix(rnorm(2000), nrow=10))
I would like to find the correlation between each row of A and B in the following way. For example there should be a correlation value for row 1 of X and row 1 of Y.
Similarly applying for all rows there will be in total ten values ( because there are ten rows)
You should really use
sapply
if you want to do it this way, i.e.sapply(1:10, function(row) cor(X[row,], Y[row,]))
edit: a more satisfying method is
diag(cor(t(X), t(Y)))
(I'll admit I had to google for this in the end)Yes,
sapply
looks neater, still learningR
way looping - apply...Thanks , It works. Is it possible to print the row-ids as well along with the values? And also could you please explain how this was done ?
There are great guides on
R
at stackoverflow.