R语言数据框合并(merge)的几种方式小结

merge data frames (inner, outer, left, right)

数据

> df1 = data.frame(CustomerId = c(1:6), Product = c(rep("Toaster", 3), rep("Radio", 3)))

> df1

> CustomerId Product

1 1 Toaster

2 2 Toaster

3 3 Toaster

4 4 Radio

5 5 Radio

6 6 Radio

> df2 = data.frame(CustomerId = c(2, 4, 6), State = c(rep("Alabama", 2), rep("Ohio", 1)))

> df

> CustomerId State

1 2 Alabama

2 4 Alabama

3 6 Ohio

inner

> merge(x = df1, y = df2, by = "CustomerId", 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 Ohio

left

> merge(x = df1, y = df2, by = "CustomerId", 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

right

> merge(x = df1, y = df2, by = "CustomerId", all.y = TRUE)

> CustomerId Product State

1 2 Toaster Alabama

2 4 Radio Alabama

3 6 Radio Ohio

outer

> merge(x = df1, y = df2, by = NULL)

> CustomerId.x Product CustomerId.y State

1 1 Toaster 2 Alabama

2 2 Toaster 2 Alabama

3 3 Toaster 2 Alabama

4 4 Radio 2 Alabama

5 5 Radio 2 Alabama

6 6 Radio 2 Alabama

7 1 Toaster 4 Alabama

8 2 Toaster 4 Alabama

9 3 Toaster 4 Alabama

10 4 Radio 4 Alabama

11 5 Radio 4 Alabama

12 6 Radio 4 Alabama

13 1 Toaster 6 Ohio

14 2 Toaster 6 Ohio

15 3 Toaster 6 Ohio

16 4 Radio 6 Ohio

17 5 Radio 6 Ohio

18 6 Radio 6 Ohio

到此这篇关于R语言数据框合并(merge)的几种方式小结的文章就介绍到这了,更多相关R语言数据框合并内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

以上是 R语言数据框合并(merge)的几种方式小结 的全部内容, 来源链接: utcz.com/z/338884.html

回到顶部