R语言中cbind、rbind和merge函数的使用与区别
cbind:根据列进行合并,即叠加所有列,m列的矩阵与n列的矩阵cbind()最后变成m+n列,合并前提:cbind(a,c)中矩阵a、c的行数必需相符
rbind:根据行进行合并,就是行的叠加,m行的矩阵与n行的矩阵rbind()最后变成m+n行,合并前提:rbind(a,c)中矩阵a、c的列数必需相符
>a<-matrix(1:12,3,4) >print(a) [,1][,2][,3][,4] [1,]14710 [2,]25811 [3,]36912 > >b<-matrix(-1:-12,3,4) >print(b) [,1][,2][,3][,4] [1,]-1-4-7-10 [2,]-2-5-8-11 [3,]-3-6-9-12 > >x=cbind(a,b) >print(x) [,1][,2][,3][,4][,5][,6][,7][,8] [1,]14710-1-4-7-10 [2,]25811-2-5-8-11 [3,]36912-3-6-9-12 > >y=rbind(a,b) >print(y) [,1][,2][,3][,4] [1,]14710 [2,]25811 [3,]36912 [4,]-1-4-7-10 [5,]-2-5-8-11 [6,]-3-6-9-12 > > >c<-matrix(-1:-20,4,5) >print(c) [,1][,2][,3][,4][,5] [1,]-1-5-9-13-17 [2,]-2-6-10-14-18 [3,]-3-7-11-15-19 [4,]-4-8-12-16-20 > >x2=cbind(a,c) Errorincbind(a,c):矩阵的行数必需相符(见arg2) >print(x2) [,1][,2][,3][,4][,5][,6][,7][,8][,9] [1,]14710-1-4-7-10-13 [2,]25811-2-5-8-11-14 [3,]36912-3-6-9-12-15 > >y2=rbind(a,c) Errorinrbind(a,c):矩阵的列数必需相符(见arg2) >print(y2) Errorinprint(y2):找不到对象'y2' >
merge函数
两个数据框拥有相同的时间或观测值,但这些列却不尽相同。处理的办法就是使用
merge(x,y,by.x=,by.y=,all=)函数。
#merge/合并 ID<-c(1,2,3,4) name<-c(“A”,”B”,”C”,”D”) score<-c(60,70,80,90) student1<-data.frame(ID,name) student2<-data.frame(ID,score) total_student1<-merge(student1,student2,by=”ID”) total_student1
当我们需要将相同的观测对象得出的不同类型变量合并时,则采用cbind,也就是合并columm。
到此这篇关于R语言中cbind、rbind和merge函数的使用与区别的文章就介绍到这了,更多相关R语言cbind、rbind和merge内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。