楼主: yecaihua
3810 6

[问答] merge合并后一行都没有 [推广有奖]

  • 0关注
  • 0粉丝

高中生

50%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
169 点
帖子
6
精华
0
在线时间
50 小时
注册时间
2019-1-15
最后登录
2021-1-26

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我使用merge合并后,列名是合并了,但是里面一行都没有出现,我是用数据集中的姓名来进行合并的,我也确定两个数据集的姓名有相同的数据,但是合并之后一行都没有
二维码

扫码加我 拉你入群

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

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

关键词:Merge 相同的数据 数据集 行合并 R语言

沙发
jiangbeilu 学生认证  发表于 2019-1-15 09:53:08 |只看作者 |坛友微信交流群
用str分别看一下每个数据框对应字段的类别是否一致。
如果类别不一致,也会导致合并不成功的情况。

还有,看看姓名后面是否有空格之类的,你看不见的字符,如果有的话,删除之。
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

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

使用道具

藤椅
yecaihua 发表于 2019-1-15 10:52:39 |只看作者 |坛友微信交流群
jiangbeilu 发表于 2019-1-15 09:53
用str分别看一下每个数据框对应字段的类别是否一致。
如果类别不一致,也会导致合并不成功的情况。
刚刚看了姓名后的确有空格,但是删除后合并还是0行。
我使用merge(x,y,by = intersect(names(x)[3],names(y)[4]))   (3.4是数据集的姓名列)可以进行合并,但是合并出来的数据比两个原本数据加起来还要多好几十万。
使用merge(x,y,by.x="姓名",by.y="姓名")  合并后一行都没有

使用道具

板凳
蓝色 发表于 2019-1-15 13:39:40 |只看作者 |坛友微信交流群
如果命令没有错误,那就是数据的问题
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

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

使用道具

报纸
熬夜头会秃 发表于 2019-1-17 19:34:52 来自手机 |只看作者 |坛友微信交流群
yecaihua 发表于 2019-1-15 09:29
我使用merge合并后,列名是合并了,但是里面一行都没有出现,我是用数据集中的姓名来进行合并的,我也确定两 ...
函数里加一个变量,all=T,估计是有个dataframe空格没处理好

使用道具

地板
熬夜头会秃 发表于 2019-1-17 19:36:29 来自手机 |只看作者 |坛友微信交流群
yecaihua 发表于 2019-1-15 09:29
我使用merge合并后,列名是合并了,但是里面一行都没有出现,我是用数据集中的姓名来进行合并的,我也确定两 ...
而且如果变量名不对的话也不行

使用道具

7
愚笨9999 发表于 2020-7-8 15:45:11 |只看作者 |坛友微信交流群
可能是每个变量最下面有很多缺省数据,就是一个点,drop in   有效数据行/-1,再试试应该就可以了

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-9 05:52