I tiene una matrizSolicitar una matriz por múltiples columna en 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
y quisiera ordenar la matriz en orden descendente primero por la columna 1 y luego por la columna dos resultante en la matriz
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
¿Alguna sugerencia sobre cómo podría lograr esto? Gracias.
Sería bueno tener una solución, donde el número de columnas Quiero ordenar por puede variar. – jmb
@jmb: debe hacer su propia pregunta, con un ejemplo de cómo esta solución no es suficiente para sus necesidades. Puedo pensar en un hack rápido, pero otros probablemente pueden llegar a algo mejor que esto: 'df [do.call (orden, c (decreciente = TRUE, data.frame (df [, 1: 2]))), ] ' –