您的位置:首页 > 其它

R语言-数据排序

2015-11-13 10:12 204 查看
R语言中对数据框或类似数据表的排序。

实验过程:

1、创建一个数据框

> a

[1] 2 9 5 6 7 3 1 4

> b<-c('a','d','e','f','g','h','i','k')

> d<-data.frame(a,b,stringsAsFactors = FALSE) #这里不需要把串当成因子

> d

a b

1 2 a

2 9 d

3 5 e

4 6 f

5 7 g

6 3 h

7 1 i

8 4 k

> str(d)

'data.frame': 8 obs. of 2 variables:

$ a: num 2 9 5 6 7 3 1 4

$ b: chr "a" "d" "e" "f" ...

2、对a列进行排序

>e<-d[order(d[,1]),]

>e

> e

a b

7 1 i

1 2 a

6 3 h

8 4 k

3 5 e

4 6 f

5 7 g

2 9 d

3、对b列进行排序

> e<-d[order(d[,2]),]

> e

a b

1 2 a

2 9 d

3 5 e

4 6 f

5 7 g

6 3 h

7 1 i

8 4 k

4、其他操作

(1)增加自然序号

> e$no<-1:length(d$a)

> e

a b no

7 1 i 1

1 2 a 2

6 3 h 3

8 4 k 4

3 5 e 5

4 6 f 6

5 7 g 7

2 9 d 8

注意:这里使用1:length(d$a),而不用1:length(d),length(d)等于d的维数,即在这里为2。

(2)增加数据索引号

>no<-order(d[,1])

> e<-d[no,]

>e$no<-no
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: