楼主: 卑鄙的我lzw
22776 7

[问答] merge函数报错:'by'必需指定唯一有效的列 [推广有奖]

  • 0关注
  • 4粉丝

硕士生

24%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
1.0000
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
1326 点
帖子
78
精华
0
在线时间
150 小时
注册时间
2017-7-18
最后登录
2021-5-10

楼主
卑鄙的我lzw 发表于 2018-11-7 19:50:55 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位大佬小哥哥,我又来问弱智的问题了,QAQ希望gay位表介意{:2_40:}~

目的:第一步:我想把文件code和文件code.hospital通过共有变量"code"应用merge函数连接在一起,生成新的文件c.h.c,
         第二步:然后把文件c.h.c和文件hospital通过共有变量“hospital”应用merge函数再连接到一起,生成新文件new。

遇到的问题:
     我在进行第一步连接的时候,控制台报错,Error in fix.by(by.y, y) : 'by'必需指定唯一有效的列,可是我的文件code和文件code.hospital中都有“code”这个变量啊,我已经指定唯一有效的列,为什么还会报错,难过(ಥ﹏ಥ)~
     附上我的数据和代码~


我的代码如下:
  1. #导入数据#
  2. code <- read.csv("C:\\Users\\lenovo\\Desktop\\code.csv")
  3. hospital <- read.csv("C:\\Users\\lenovo\\Desktop\\hospital.csv")
  4. code.hospital <- read.csv("C:\\Users\\lenovo\\Desktop\\code-hospital.csv")
  5. #merge连接#
  6. c.h.c <- merge(code,hospital,by="code",all = F)  #报错#
  7. #报错后尝试另一种方式#
  8. c.h.c <- merge(code,hospital,by.x="code",by.y="code",all = F)  #依然报错#
复制代码




dataset.zip (743 Bytes) 本附件包括:
  • code.csv
  • hospital.csv
  • code-hospital.csv



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:merge函数 Merge Error code 导入数据

沙发
lemon.d 发表于 2018-11-7 22:28:06
你的hospital文件里有code这一列?
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

藤椅
卑鄙的我lzw 发表于 2018-11-8 08:32:16
lemon.d 发表于 2018-11-7 22:28
你的hospital文件里有code这一列?
木有,我的文件code-hospital中有连接变量“code”和“hospital”,文件code中有连接变量“code”,文件hospital中有连接变量“hospital”

板凳
Whig 在职认证  发表于 2018-11-8 10:02:31
by指定根据哪一列进行merge,你的hospital里没有code列就不能跟code表进行merge
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

报纸
zerofung 学生认证  发表于 2018-11-8 10:23:01
c.h.c <- merge(code,code.hospital,by="code",all = F)
new <-  merge(c.h.c,hospital,by="hospital",all = F)
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

地板
卑鄙的我lzw 发表于 2018-11-8 11:41:47
Whig 发表于 2018-11-8 10:02
by指定根据哪一列进行merge,你的hospital里没有code列就不能跟code表进行merge
啊啊啊啊,喵了个小咪咪的,我把数据库自己搞错了{:3_60:},我第一想merge的是code和code.hospital结果写成hospital了,,真是对不起大家啦!

7
卑鄙的我lzw 发表于 2018-11-8 11:42:12
zerofung 发表于 2018-11-8 10:23
c.h.c
谢谢小哥哥,,我把数据库的名字写错啦

8
卑鄙的我lzw 发表于 2018-11-8 11:42:53
lemon.d 发表于 2018-11-7 22:28
你的hospital文件里有code这一列?
啊啊啊,谢谢,我知道了,我把数据库的名字写错啦

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-26 10:59