我有以下两个数据框: all_cards具有对32个变量的1,334个观测值,而contact具有对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”的列,并且这两列都是“字符”类。我对此合并功能为何不起作用感到困惑。
我想要的结果将是获得数据框contact2,其中包含对14个变量的1,321个观察值,最后两个是idList和idLabels。
我在运行macOS Sierra(版本10.12.6)的Mac上使用RStudio版本1.1.456。任何帮助将不胜感激。
答案 0 :(得分:1)
<CommandFlag>CommandWellOnly</CommandFlag>
列必须同时存在于by
中,因此列data.frame
也必须包含在y id
中:
data.frame