Tôi đang cố gắng đặt các hàng của một ma trận theo thứ tự giống như các hàng của một ma trận khác có cùng kích thước. Tuy nhiên tôi không thể tìm ra cách để làm điều này mà không có một vòng lặp rõ ràng. Có vẻ như tôi sẽ có thể làm điều này với subsetting và một chức năng áp dụng hoặc bản đồ, nhưng tôi không thể tìm ra cách để làm điều đó.Sắp xếp một ma trận dựa trên một ma trận khác
Dưới đây là một ví dụ đồ chơi:
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]]
}
Sử dụng phương pháp này, kết quả sorted
ma trận chứa các giá trị từ sortMe
được sắp xếp theo thứ tự giống như ma trận sortBy
. Bất kỳ ý tưởng làm thế nào tôi muốn làm điều này mà không có vòng lặp?
Cám ơn profiling. Điều đó thực sự thú vị! –