R语言之merge函数案例

更新时间:2023-06-28 14:44:27 阅读: 评论:0

R语⾔之merge函数案例
R语⾔的merge函数可以实现类似SQL的有点类似 left join right join 或者类似union的效果。
df1 = data.frame(CustomerId=c(1:6),Product=c(rep("Toaster",3),rep("Radio",3)))
> df2 = data.frame(CustomerId=c(2,4,6,7),State=c(rep("Alabama",3),rep("Ohio",1)))
> df1
CustomerId Product
1 1 Toaster
2 2 Toaster
3 3 Toaster
4 4 Radio
5 5 Radio
6 6 Radio
> df2
CustomerId State
win7游戏全屏1 2 Alabama
2 4 Alabama
3 6 Alabama
4 7 Ohio
> merge(df1, df2, all=TRUE)
CustomerId Product State
1 1 Toaster <NA>
2 2 Toaster Alabama
3 3 Toaster <NA>
4 4 Radio Alabama
5 5 Radio <NA>
6 6 Radio Alabama
7 7 <NA> Ohio
#full join的效果
> merge(df1, df2, all.x=TRUE)
CustomerId Product State
1 1 Toaster <NA>
纸盒做房子
2 2 Toaster Alabama
3 3 Toaster <NA>
4 4 Radio Alabama
5 5 Radio <NA>
6 6 Radio Alabama
#left join的效果
> merge(df1, df2, all.y=TRUE)
CustomerId Product State
1 2 Toaster Alabama
爱好的反义词
2 4 Radio Alabama
3 6 Radio Alabama
4 7 <NA> Ohio
#right join的效果。。
悠仙美地
在df1 和df2 有相同的列名称下
> df1<-data.frame(col1=c(1,2),col2=c(2,3))
> df2<-data.frame(col1=c(1,4),col2=c(2,100))
> merge(df1, df2, all=TRUE)
col1 col2
1 1 2
2 2 3
3 4 100
#这个达到的是union的效果
执⾏merge函数时,函数⾃动会找到两个数据框df1和df2共有的列,即id那⼀列(即相当于by= "id"),当参数all= FALSE时,会将两个数据框中该列数值相等的那些⾏输出来,类似于对这两个数据框的id这⼀列求交集(interction)。此例中是id为2或7这两⾏。此外,还可以发现df1和df2的输⼊顺
序不会影响最终结果,仅仅会影响输出结果中heights和weights这两列的顺序。
更详细可以参考 rstudio-pubs-static./13602_96265a9b3bac4cb1b214340770aa18a1.html
------------公益讲座
成都武侯祠by参数的使⽤
上⾯的⽰例中by参数只有⼀个值,如果有两个数值(即长度为2的向量),也就是两个数据框中有共同的两列。
df1$x <- c("f", "m", "f", "f", "m")
df2$x <- c("f", "f", "m", "m", "f", "f", "f")
merge(df1, df2)
##  id x heights weights
## 1  2  f      62    113
## 2  7  m      67    135
merge(df1, df2, by = c("id", "x"))
##  id x heights weights一言九鼎
## 1  2  f      62    113
## 2  7  m      67    135
merge(df1, df2, by = "id")
##  id heights x.x weights x.y
## 1  2      62    f    113    f
## 2  7      67    m    135    m
为两个数据框分别添加⼀列后,这样它们就有了共同的两列。当运⾏merge函数后发现,函数会⾃动找到共同的列,然后找到id和x这两列中共有的数值。此外,如果只设定by= "id"的话,则两数据框中共有的x那⼀列则会以x.x和x.y形式输出。关于描写春天的古诗

本文发布于:2023-06-28 14:44:27,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1058809.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:函数   类似   输出   结果   影响
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图