2015-10-08 39 views
-1

數據進行排序我有一個矩陣:如何在表

m = matrix(c(c(1,4,2,5,8,5)), ncol=2) 
colnames(m)<-c("a", "b") 

,所以我必須:

 a b 
[1,] 1 5 
[2,] 4 8 
[3,] 2 5 

如何通過一個列進行排序,例如?

+3

'M [順序(M [ 「一」] )]'? – nrussell

+0

是的,非常感謝! – Zerig

+1

@nrussell國際海事組織你應該作爲答覆發佈。 – jlhoward

回答

1

你可以用base::order做到這一點:

R> m[order(m[,"a"]), ] 
#  a b 
#[1,] 1 5 
#[2,] 2 5 
#[3,] 4 8 
0

使用dplyr包。但這種變化的data.frame ...但你可以很容易地將其改回

#install.packages(dplyr) 
library(dplyr) 
M <- arrange(as.data.frame(m), a) 
#change back 
m <- as.matrix(M)