Ho una matriceordinare una matrice per colonna multipla in r
df<-matrix(data=c(3,7,5,0,1,0,0,0,0,8,0,9), ncol=2)
rownames(df)<-c("a","b","c","d","e","f")
[,1] [,2]
a 3 0
b 7 0
c 5 0
d 0 8
e 1 0
f 0 9
e desidero ordinare la matrice in ordine decrescente, prima di colonna 1 e poi da colonna due conseguente matrice
df.ordered<-matrix(data=c(7,5,3,1,0,0,0,0,0,0,9,8),ncol=2)
rownames(df.ordered)<-c("b","c","a","e","f","d")
[,1] [,2]
b 7 0
c 5 0
a 3 0
e 1 0
f 0 9
d 0 8
Qualche suggerimento su come potrei ottenere questo? Grazie.
sarebbe bello avere una soluzione, in cui il numero di colonne voglio ordinare per può variare. – jmb
@ jmb: dovresti fare la tua domanda, con un esempio di come questa soluzione non è sufficiente per le tue esigenze. Posso pensare a un attacco rapido, ma altri possono probabilmente trovare qualcosa di meglio: 'df [do.call (order, c (decreasing = TRUE, data.frame (df [, 1: 2]))), ] ' –