5

我有一个看起来像这样的表(out):

V1    V2    V3
A     x     0
A     y     1
A     z     10
A     a     11
A     b     12
...   ...   ...
A     c     2
A     d     21
A     e     22
...   ...   ...
A     f     3

我用这个函数根据 V3 对这个表进行了排序

sorted.out <- out[order(out$V3), ]   

但是我希望 V3 中的值按数字顺序排列,例如 1,2,3,4,...,10,11,12,...,而不是现在的 1,10,11,12,...

我怎样才能做到这一点?

当我使用 str(out) 时,我的 V3 会作为因子变量出现。我应该把它改成数字吗?

4

1 回答 1

9

尝试sorted.out <- out[order(as.numeric(as.character(out$V3))), ]

请注意,您必须先转换为character,然后再转换为numeric。否则,您可能会根据因素最终获得订单。

于 2013-04-10T13:24:18.707 回答