这篇文章主要介绍了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,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
>
> 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,] 1 4 7 10 -1 -4 -7 -10
[2,] 2 5 8 11 -2 -5 -8 -11
[3,] 3 6 9 12 -3 -6 -9 -12
>
> y=rbind(a,b)
> print(y)
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
[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)
Error in cbind(a, c) : 矩阵的行数必需相符(见arg2)
> print(x2)
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9]
[1,] 1 4 7 10 -1 -4 -7 -10 -13
[2,] 2 5 8 11 -2 -5 -8 -11 -14
[3,] 3 6 9 12 -3 -6 -9 -12 -15
>
> y2=rbind(a,c)
Error in rbind(a, c) : 矩阵的列数必需相符(见arg2)
> print(y2)
Error in print(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内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
沃梦达教程
本文标题为:R语言中cbind、rbind和merge函数的使用与区别


猜你喜欢
- R语言-如何切换科学计数法和更换小数点位数 2022-11-23
- 汇编语言程序设计之根据输入改变屏幕颜色的代码 2023-07-06
- Go Web开发进阶实战(gin框架) 2023-09-06
- Golang http.Client设置超时 2023-09-05
- R语言关于二项分布知识点总结 2022-11-30
- Ruby on Rails在Ping ++ 平台实现支付 2023-07-22
- Swift超详细讲解指针 2023-07-08
- R语言绘图数据可视化pie chart饼图 2022-12-10
- Ruby 迭代器知识汇总 2023-07-23
- Ruby的字符串与数组求最大值的相关问题讨论 2023-07-22