Ordenar una matriz basada en otra matriz
Estoy tratando de poner las filas de una matriz en el mismo orden que las filas de otra matriz de la misma dimensión. Sin embargo, no sé cómo hacer esto sin un bucle explícito. Parece que debería poder hacer esto con subconjuntos y una aplicación o función de mapa, pero no puedo encontrar la manera de hacerlo.
Aquí hay un ejemplo de juguete:
sortMe <- matrix(rnorm(6), ncol=2)
sortBy <- matrix(c(2,1,3, 1,3,2), ncol=2)
sorted <- sortMe
for (i in 1:ncol(sortMe)) {
sorted[,i] <- sortMe[,i][sortBy[,i]]
}
Usando este método, el resultadosorted
matriz contiene los valores desortMe
ordenados en el mismo orden que elsortBy
matriz. ¿Alguna idea de cómo haría esto sin el bucle?