我对R很新,并尝试构建一个比较两个数据集的函数,为了做到这一点,我需要在多个列上对数据表进行排序。我相信在某个地方会有一些帮助,但我不确定如何搜索它。 到目前为止,这是我的方法:
DT = data.table(x=rep(c("b","a","c"),each=3), y=c(1,3,6), v=1:9)
#column vector
keycol <-c("x","y")
DT[order(keycol)]
x y v
1: b 1 1
2: b 3 2
不知何故它只显示2行并删除其他记录。但是如果我这样做:
> DT[order(x,y)]
x y v
1: a 1 4
2: a 3 5
3: a 6 6
4: b 1 1
5: b 3 2
6: b 6 3
7: c 1 7
8: c 3 8
9: c 6 9
它就像流体一样。 任何人都可以帮助使用列名矢量进行排序,任何帮助将不胜感激。