在这里,我们将解释如何编写 R 程序来从给定的两个数据框创建内连接、外连接、左连接、右连接(合并)。这里我们使用内置函数 data.frame() 和 merge()。数据框用于存储数据表,它包含长度相等的向量列表。数据框通过函数 data.frame() 创建,该函数具有紧密耦合的变量集合。而 merge() 函数有助于通过公共列或行名或数据库连接操作来合并两个数据框。该函数的语法是,
merge(x, y, …)
其中 x, y 是数据框,或要强制转换为数据框的对象。而 dots(...) 表示要传递给方法或从方法传递的参数。
以下是在 R 程序中从给定的两个数据框创建内连接、外连接、左连接、右连接的步骤。在此 R 程序中,我们直接将数据框提供给内置函数。这里我们使用变量 D1, D2 来保存数据框。调用函数 data.frame() 来创建数据框。最后,通过以不同方式调用 merge 函数来合并给定的数据框。
步骤 1:将数据框分配给变量 D1, D2
步骤 2:首先执行左外连接,如 merge(D1, D2, by = "data", all.x = TRUE)
步骤 3:接下来执行右外连接,如 merge(D1, D2, by = "data", all.y = TRUE)
步骤 4:打印外连接,如 merge(D1, D2, by = "data", all = TRUE)
步骤 5:打印交叉连接,如 merge(D1, D2, by = NULL)
D1 = data.frame(data = c(12, 14, 10, 11))
D2 = data.frame(data= c(13, 15, 11, 12))
print("Left outer Join:")
result = merge(D1, D2, by = "data", all.x = TRUE)
print(result)
print("Right outer Join:")
result = merge(D1, D2, by = "data", all.y = TRUE)
print(result)
print("Outer Join:")
result = merge(D1, D2, by = "data", all = TRUE)
print(result)
print("Cross Join:")
result = merge(D1, D2, by = NULL)
print(result)
[1] "Left outer Join:" data 1 10 2 11 3 12 4 14 [1] "Right outer Join:" data 1 11 2 12 3 13 4 15 [1] "Outer Join:" data 1 10 2 11 3 12 4 13 5 14 6 15 [1] "Cross Join:" data.x data.y 1 12 13 2 14 13 3 10 13 4 11 13 5 12 15 6 14 15 7 10 15 8 11 15 9 12 11 10 14 11 11 10 11 12 11 11 13 12 12 14 14 12 15 10 12 16 11 12