如何通过使用某种特定格式对给定列进行排序来对表进行排序

时间:2016-06-17 03:00:29

标签: r statistics

我有一个如下生成的数据表:

df<-read.table("C:\\Desktop\\ID.txt",header=FALSE, sep=",")
df.table<-data.frame(df)

数据看起来像这样

A              B                      C
1   2016-04-08 21:51:19.232000000    4624
2   2016-04-08 21:51:20.232000000    4623
3   2016-04-08 21:51:23.223000000    4646
4   2016-03-08 21:51:23.224000000    4624
5   2016-04-08 21:51:23.210000000    4625
6   2016-02-08 21:51:24.251000000    4648

我想按照B列

的排序顺序订购此表
A               B                     C
6   2016-02-08 21:51:24.251000000    4648
4   2016-03-08 21:51:23.224000000    4624
1   2016-04-08 21:51:19.232000000    4624
2   2016-04-08 21:51:20.232000000    4623
5   2016-04-08 21:51:23.210000000    4625
3   2016-04-08 21:51:23.223000000    4646

我可以知道怎么做吗?

1 个答案:

答案 0 :(得分:1)

我们可以在POSIXct列上使用order

dfN <- df1[order(df1$B),]
dfN
#  A                       B    C
#6 6 2016-02-08 21:51:24.250 4648
#4 4 2016-03-08 21:51:23.223 4624
#1 1 2016-04-08 21:51:19.232 4624
#2 2 2016-04-08 21:51:20.232 4623
#5 5 2016-04-08 21:51:23.210 4625
#3 3 2016-04-08 21:51:23.223 4646

在这里,我假设列&#39; B&#39;在POSIXct课程中,或者我们可能需要在class之前将其转换为order

options(digits.secs = 4)
df1$B <- as.POSIXct(df1$B )