排序数值R.

use*_*607 5 r

我有一个表(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
Run Code Online (Sandbox Code Playgroud)

我使用此功能基于V3对此表进行了排序

sorted.out <- out[order(out$V3), ]   
Run Code Online (Sandbox Code Playgroud)

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

我怎样才能做到这一点?

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

Fer*_*aft 8

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

请注意,您必须先转换为character,然后转换为numeric.否则,您可能会根据因素得到订单.