我有 n 行和3列的字符矩阵 mtr 。
我有一个带有一些数字的数字向量 nmb ,例如,4,5,6
我想在我的矩阵的第一列中仅排序 mtr 的行,其数量由 nmb 包含。
所以在我的情况下,我希望保持矩阵不变,除了第4,5,6行,我希望按第一列排序,当然,写回我的矩阵 mtr
我怎么能这样做?感谢。
答案 0 :(得分:0)
你可以这样做:
mtr[nmb,] <- mtr[order(mtr[nmb,1]),]
答案 1 :(得分:0)
我认为这样做会
mtr[nmb,] <- mtr[nmb,][order(mtr[nmb,1]),]
一个例子:
nmb <- 4:6
mtr <- matrix(30:1, ncol=3)
> mtr
[,1] [,2] [,3]
[1,] 30 20 10
[2,] 29 19 9
[3,] 28 18 8
[4,] 27 17 7
[5,] 26 16 6
[6,] 25 15 5
[7,] 24 14 4
[8,] 23 13 3
[9,] 22 12 2
[10,] 21 11 1
> mtr[nmb,] <- mtr[nmb,][order(mtr[nmb,1]),]
> mtr
[,1] [,2] [,3]
[1,] 30 20 10
[2,] 29 19 9
[3,] 28 18 8
[4,] 25 15 5 <-
[5,] 26 16 6 <- sorted
[6,] 27 17 7 <-
[7,] 24 14 4
[8,] 23 13 3
[9,] 22 12 2
[10,] 21 11 1