R语言数据的排序和合并--ordered();rbind()

R语言数据的排序和合并

 leadership借用前一章的:

> leadership

  managerID testDate country gender age item1 item2 item3 item4 item5

1         1 10/14/08      us      M  32     5     4     5     5     5

2         2 10/28/08      us      F  45     3     5     2     5     5

3         3  10/1/18      uk      F  25     3     5     5     5     2

4         4 10/12/08      uk      M  39     3     3     4    NA    NA

5         5   5/1/09      uk      F  99     2     2     1     2     1

>#按照年龄来排序(升序)

>#有缺失值的一定是放在最后面

> newData<-leadership[order(leadership$age),]

> newData

  managerID testDate country gender age item1 item2 item3 item4 item5

3         3  10/1/18      uk      F  25     3     5     5     5     2

1         1 10/14/08      us      M  32     5     4     5     5     5

4         4 10/12/08      uk      M  39     3     3     4    NA    NA

2         2 10/28/08      us      F  45     3     5     2     5     5

5         5   5/1/09      uk      F  99     2     2     1     2     1

> leadership$age[leadership$age==99]<-NA

> leadership

  managerID testDate country gender age item1 item2 item3 item4 item5

1         1 10/14/08      us      M  32     5     4     5     5     5

2         2 10/28/08      us      F  45     3     5     2     5     5

3         3  10/1/18      uk      F  25     3     5     5     5     2

4         4 10/12/08      uk      M  39     3     3     4    NA    NA

5         5   5/1/09      uk      F  NA     2     2     1     2     1

> newData<-leadership[order(leadership$age),]

> newData

  managerID testDate country gender age item1 item2 item3 item4 item5

3         3  10/1/18      uk      F  25     3     5     5     5     2

1         1 10/14/08      us      M  32     5     4     5     5     5

4         4 10/12/08      uk      M  39     3     3     4    NA    NA

2         2 10/28/08      us      F  45     3     5     2     5     5

5         5   5/1/09      uk      F  NA     2     2     1     2     1

>#按照性别和年龄进行排序,因为性别写在前面所以先安性别排序,之后性别相同的按年龄在排序

> newData<-leadership[order(gender,age),]

> newData

  managerID testDate country gender age item1 item2 item3 item4 item5

3         3  10/1/18      uk      F  25     3     5     5     5     2

2         2 10/28/08      us      F  45     3     5     2     5     5

5         5   5/1/09      uk      F  NA     2     2     1     2     1

1         1 10/14/08      us      M  32     5     4     5     5     5

4         4 10/12/08      uk      M  39     3     3     4    NA    NA

> #对性别按升序排列,按年龄降序排列

> newData<-leadership[order(gender,-age),]

> newData

  managerID testDate country gender age item1 item2 item3 item4 item5

5         5   5/1/09      uk      F  NA     2     2     1     2     1

2         2 10/28/08      us      F  45     3     5     2     5     5

3         3  10/1/18      uk      F  25     3     5     5     5     2

4         4 10/12/08      uk      M  39     3     3     4    NA    NA

1         1 10/14/08      us      M  32     5     4     5     5     5

 

 

数据集的合并

合并函数是rbind()函数

例:两个数据框的合并实例

#先读入数据

> stamp1Z<-"C:\\Users\\Administrator\\Desktop\\test1.csv"

> stamp1<-read.csv(stamp1Z,sep = ",")

> stamp1

  编号   姓名 年龄

1    1   anne   12

2    2   qiqi   14

3    3 jiajia   16

4    4   nana   23

5    5 maomao   21

6    6   lima   22

7    7   mama   34

> stamp2Z<-"C:\\Users\\Administrator\\Desktop\\test2.csv"

> stamp2<-read.csv(stamp2Z,sep = ",")

> stamp2

  编号   姓名 年龄

1   11   anne   12

2   12   qiqi   14

3   13 jiajia   16

4   14   nana   23

5   15 maomao   21

6   16   lima   22

7   17   mama   34

> stampz<-rbind(stamp1,stamp2)  #用rbind()将stamp1和stamp2绑定在一起

> stampz

   编号   姓名 年龄

1     1   anne   12

2     2   qiqi   14

3     3 jiajia   16

4     4   nana   23

5     5 maomao   21

6     6   lima   22

7     7   mama   34

8    11   anne   12

9    12   qiqi   14

10   13 jiajia   16

11   14   nana   23

12   15 maomao   21

13   16   lima   22

14   17   mama   34

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值