R加入具有相同行数和索引列的两个数据集

R Joining two datasets with same rowcount and index columns

我有两个数据集dataset1

 Id   A    B
 1    Y    N
 2    N    N
 3    Na   Na
 4    Y    Y

数据集 2

 Id   A    C
 1    Y    Y
 2    N    Y
 3    Na   N
 4    Y    N

我正在尝试根据它们的 ID 列连接这两个数据集并生成这样的数据集

 Id   A    B    C
 1    Y    N    Y
 2    N    N    Y
 3    Na   Na   N
 4    Y    Y    N

当我尝试 left_join(dataset1, datase2, by="ID") 时,我得到的行比预期的要多,就像这样

 Id   A    B    C
 1    Y    N    Y
 2    N    N    Y
 2         N    
 3    Na   Na   N
 3              N
 4    Y    Y    N

当我进行合并时,merge(dataset1, dataset2) 相反,我得到的行数较少,有人能告诉我哪里出错了吗,抱歉,这让我发疯了。

下面是我的试用版

df1 <- data.frame(Id = 1:4,
                  A = c("Y","N",NA,"Y"),
                  B = c("N","N",NA,"Y"))
df2 <- data.frame(Id = 1:4,
                  A = c("Y","N",NA,"Y"),
                  C = c("Y","Y","N","N"))
merge(df1, df2, by="Id")
  Id  A.x    B  A.y C
1  1    Y    N    Y Y
2  2    N    N    N Y
3  3 <NA> <NA> <NA> N
4  4    Y    Y    Y N

您可以从 left_join(dataset1, datase2, by="ID")left_join(dataset1, datase2, by="Id") 重试。