📜  如何在 R 中合并两个数据帧?

📅  最后修改于: 2022-05-13 01:54:53.196000             🧑  作者: Mango

如何在 R 中合并两个数据帧?

在本文中,我们将看到如何合并两个 R 数据帧。 R 中数据帧的合并可以通过两种方式完成。

  • 合并列
  • 合并行

合并列

这样我们就横向合并了数据库。我们使用合并函数通过一个或多个公共关键变量(即内连接)合并两个帧。

dataframe_AB = merge(dataframe_A, dataframe_B, by="ID")

下面是实现:

R
# merging two datasets
authors <- data.frame(
  name = c("kapil", "sachin", "Rahul","Nikhil","Rohan"),
  nationality = c("US","Australia","US","UK","India"),
  retired = c("Yes","No","Yes","No","No"))
  
books <-data.frame( 
  name = c("C", "C++","Java","php",".net","R"),
  title = c("Intro to C","Intro to C++", 
            "Intro to java", "Intro to php", 
            "Intro to .net", "Intro to R"),
  author = c("kapil", "kapil","sachin", "Rahul",
             "Nikhil","Nikhil"))
    
  merge(authors, books, by.x = "name", by.y = "author")


R
# merging two datasets
authors_A <- data.frame(
  name = c("kapil", "sachin", "Rahul"),
  nationality = c("US", "Australia", "US"),
  retired = c("Yes", "No", "Yes"))
  
authors_B <- data.frame(
  name = c("Nikhil", "Rohan"),
  nationality = c("UK", "India"),
  retired = c("No", "No"))
  
rbind(authors_A, authors_B)


输出:



合并行

这样,我们垂直合并数据帧并使用 rbind()函数。 rbind 代表行绑定。两个数据框必须具有相同的变量,但不必具有相同的顺序。

注意:如果 dataframe_A 有 dataframe_B 没有的变量,要么删除 dataframe_A 中的额外变量,要么在 dataframe_B 中创建额外的变量并将它们设置为 NA。

从下图中我们可以看出,它组合了两个数据帧的行。

下面是实现:

电阻

# merging two datasets
authors_A <- data.frame(
  name = c("kapil", "sachin", "Rahul"),
  nationality = c("US", "Australia", "US"),
  retired = c("Yes", "No", "Yes"))
  
authors_B <- data.frame(
  name = c("Nikhil", "Rohan"),
  nationality = c("UK", "India"),
  retired = c("No", "No"))
  
rbind(authors_A, authors_B)

输出: