使用dplyr包对表格整理

时间:2022-07-24
本文章向大家介绍使用dplyr包对表格整理,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

R自带的对数据框添加新的行或列函数为cbind()和rbind(),对应于dplyr包的bind_cols()和bind_rows()。使用这两个函数要求数据能很好的对应。

构建数据框

> df1<-data.frame(x=c("a","b","c"),y=1:3)
> df2<-data.frame(z=c("B","D","H"),g=c(2,5,3))
> df3<-data.frame(x=c("g","b"),y=c(2,5))
> df1
  x y
1 a 1
2 b 2
3 c 3
> df2
  z g
1 B 2
2 D 5
3 H 3
> df3
  x y
1 g 2
2 b 5

按行合并

df_rbind<-bind_rows(df1,df3)
> df_rbind
  x y
1 a 1
2 b 2
3 c 3
4 g 2
5 b 5

按列合并

> df_colbind<-bind_cols(df1,df2)
> df_colbind
  x y z g
1 a 1 B 2
2 b 2 D 5
3 c 3 H 3

bind_rows/bind_cols()还可以合并列表

前提是两个列表结构一样,比如按行bind则要求列数一样。

 f<-split(starwars, starwars$homeworld)   #得到一系列列表
bind_rows(f)   合并list