2014-05-23 65 views
-1

我有一個字符矩陣mtrn行和3列。按R中的第一列對矩陣中的指定行排序

我有一個數字矢量NMB有一些數字,例如4,5,6

我想那種只地鐵的行,數字內容通過NMB載,在我矩陣的第一列。

因此,在我的情況下,我想保留我的矩陣,除了第4,5,6行,我希望按第一列排序,當然還會寫回我的矩陣mtr

我該怎麼做?謝謝。

回答

0

你能做到這樣:

mtr[nmb,] <- mtr[order(mtr[nmb,1]),] 
+0

嗯,因爲某些原因,它只是刪除的行由nmb定義... – user3611046

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