R语言合并data.frame

更新时间:2023-07-21 02:47:35 阅读: 评论:0

R语⾔合并data.frame
sccm
Merging Data
Adding Columns
To merge two data frames (datats) horizontally,  u the merge function. In most cas, you join two data frames  by one or more common key variables (i.e., an inner join).
# merge two data frames by IDbromine
total <- merge(data frameA,data frameB,by="ID") #by指定的列中的值必须是唯⼀的,不能重复出现两⾏有相同的ID
# merge two data frames by ID and Country
total <- merge(data frameA,data frameB,by=c("ID","Country")) #by指定的列中的值必须是唯⼀的,不能重复出现两⾏有相同的ID
Inner join:merge(df1, df2) will work for the examples becau R automatically joins the frames by co
mmon variable names, but you would most likely want to specify merge(df1, df2, by="CustomerId") to make sure that you were matching on only the fields you desired.  You can also u the by.x and by.y parameters if the matching variables have different names in the different data frames.
scenery什么意思Outer join:merge(x = df1, y = df2, by = "CustomerId", all = TRUE) #by指定的列中的值必须是唯⼀的,不能重复出现两⾏有相同的ID
Left outer:merge(x = df1, y = df2, by = "CustomerId", all.x=TRUE) #by指定的列中的值必须是唯⼀的,不能重复出现两⾏有相同的ID
Right outer:merge(x = df1, y = df2, by = "CustomerId", all.y=TRUE) #by指定的列中的值必须是唯⼀的,不能重复出现两⾏有相同的ID
Cross join:merge(x = df1, y = df2, by = NULL) #by指定的列中的值必须是唯⼀的,不能重复出现两⾏有相同的ID
>>>>>
> df2 = data.frame(CustomerId=c(2,4,6),State=c(rep("Alabama",2),rep("Ohio",1)))
> df1
CustomerId Product
dolls1          1 Toaster
2          2 Toaster
3          3 Toaster
4          4  Radio
5          5  Radio
6          6  Radiotoo to
> df2
marinecorpsCustomerId  State
delicate1          2 Alabama
2          4 Alabama
3          6    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>truetype
6          6  Radio    Ohio
> 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    Ohio
> merge(df1, df2, all.y=TRUE)
CustomerId Product  State
1          2 Toaster Alabama
2          4  Radio Alabama
3          6  Radio    Ohio
amu
>>>>>>>##
de <- merge(d, e, by=0, all=TRUE) # merge by row names (by=0 or by="row.names") REF:

本文发布于:2023-07-21 02:47:35,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/183837.html

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

标签:出现   不能
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图