【发布时间】:2018-12-03 05:30:55
【问题描述】:
我有以下两个数据框: all_cards,它有 32 个变量的 1,334 个观察值,以及接触,它有 12 个变量的 1,321 个观察值。两个数据框都包含一个名为 id 的列,它具有相同的 id 编号,但顺序不同(all_cards 的 id 编号比联系人多 13 个)。
我想将 all_cards 中的两个变量(列)添加到联系人。
我尝试使用以下代码进行此操作;
contacts2 <- merge(x = contacts, y = all_cards[,c("idList", "idLabels")], by = "id")
并收到以下错误;
Error in fix.by(by.y, y) : 'by' must specify a uniquely valid column
当我指定 by.x = "id" 和 by.y = "id" 时,我得到了同样的错误。我已经检查过,两个数据框只有一个名为“id”的列,并且两列都是“字符”类。我不知道为什么这个合并功能不起作用。
我想要的结果是拥有数据框 contacts2,其中包含 14 个变量的 1,321 个观察值,最后两个是 idList 和 idLabels。
我在运行 macOS Sierra(版本 10.12.6)的 Mac 上使用 RStudio 版本 1.1.456。任何帮助将不胜感激。
【问题讨论】:
-
您在 all_cards 中将 id 插入到
merge之前。只需将其包含在其他两列中即可。