Reputation: 1981
I have a vector and a matrix . How can I get the following result?
v = c(1, 3, 2, 4, 7, 5)
v = sort(v)
m = matrix(c(1,2, 3, 4,5, 6, 7, 8, 9, 10, 11, 12), ncol=2)
> res = matrix(c(1, 3, 2, 4, 6, 5, 7, 9, 8, 10, 12, 11), ncol=2)
> res
[,1] [,2]
[1,] 1 7
[2,] 3 9
[3,] 2 8
[4,] 4 10
[5,] 6 12
[6,] 5 11
Upvotes: 0
Views: 4221
Reputation: 55350
You likely are looking for order
instead of sort
m[order(v), ]
[,1] [,2]
[1,] 1 7
[2,] 3 9
[3,] 2 8
[4,] 4 10
[5,] 6 12
[6,] 5 11
Upvotes: 2