R:保持矩阵的原始排序

时间:2013-10-09 07:42:48

标签: r

我有一个矩阵,其列名称可以切换,但是,当我这样做时,列会重新排序。例如:
BGASBK BTICFR
成为
CFRBTI SBKBGA(因为我已经切换了前三个字母和最后三个字母) 但是,我希望新订单与原始订单相同,即 SBKBGA CFRBTI
实际上,不仅仅是列。

非常感谢任何帮助!

由于

麦克

1 个答案:

答案 0 :(得分:1)

为什么不将原始订单存储在列中并使用它来重新排序最终结果?像这样:

A <- data.frame(a=c("BGASBK","BTICFR"),
           b=c("SBKBGA","CFRBTI"))
 ## I store the order of the column a to be used later
 A$ord <- order(A$a) ## here you can use many columns order(col1,col2,..)

现在如果我有b {s}的B <- A[order(A$b),],我可以使用ord列重新排序:

B[order(B$ord),]