R中的merge函数类似于Excel中的Vlookup,可以实现对两个数据表进行匹配和拼接的功能。

merge(x, y, by = intersect(names(x), names(y)), by.x = by, by.y = by, all = FALSE, all.x = all, all.y = all, sort = TRUE, suffixes = c(".x",".y"), incomparables = NULL, ...)

x,y:用于合并的两个数据框

by,by.x,by.y:用于连接两个数据集的列,intersect(a,b)值向量a,b的交集,names(x)指提取数据集x的列名 by = intersect(names(x), names(y)) 是获取数据集x,y的列名后,提取其公共列名,作为两个数据集的连接列, 当有多个公共列时,需用下标指出公共列,如names(x)[1],指定x数据集的第1列作为公共列 也可以直接写为 by = ‘公共列名’ ,前提是两个数据集中都有该列名,并且大小写完全一致,R语言区分大小写

all,all.x,all.y:指定x和y的行是否应该全在输出文件.

sort:by指定的列是否要排序.

suffixes:指定除by外相同列名的后缀.

incomparables:指定by中哪些单元不进行合并.

merge函数有4种匹配拼接模式,分别为inner,left,right和outer模式。 其中inner为默认的匹配模式。all=T代表全连接,all.x=T代表左联结;all.y=T代表右连接

inner 模式匹配,只显示两个数据集公共列中均有的行

有多个公共列时,需指出使用哪一列作为连接列merge(x,y,by=intersect(names(x)[1],names(y)[1]))

当两个数据集连接列名称同时,直接用by.x,by.y 指定连接列merge(x,y,by.x ='name',by.y ='name')

当两个数据集均有连接列时,直接指定连接列的名称merge(x,y,by='name')

outer 模式,将两张表的数据汇总,表中原来没有的数据置为空

merge(x, y, all=TRUE, sort=TRUE)

all = TRUE 表示选取x, y 数据集的所有行,sort = TRUE,表示按 by 列进行排序,默认升序

left 匹配模式

merge(x ,y,all.x=TRUE,sort=TRUE)

多个公共列 末指定连接列 ,左连接,设置 all.x = TRUE,结果只显示数据x的列及x在y数据集中没有的列

merge(x, y, by = 'name',all.x = TRUE, sort = TRUE) # 多个公共列 指定连接列指, 左连接,设置 all.x = TRUE,结果只显示x所有names(x)[1]值

right 匹配模式

merge(x ,y ,by='name',all.y=TRUE,sort=TRUE)

多个公共列指定连接列# 左连接,设置all.y =TRUE,结果只显示y所有names(y) [1] 值的记录

merge函数_merge函数相关推荐

  1. Java箭头函数,lambda函数

    Java箭头函数,lambda函数 lambda表达式实质就是一种语法糖,(建议尽量不要使用lambda表达式,代码太简洁,难懂,难以调试) lambda表达式的简单例子: 不需要参数,返回5 ()- ...

  2. C++ 笔记(13)— 函数(函数声明、函数定义、函数调用[传值、指针、引用]、函数参数默认值、函数重载)

    每个 C++ 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数. 1. 函数声明 函数声明告诉编译器函数的名称.返回类型和参数.函数声明包括以下几个部分: ret ...

  3. python nums函数_Python函数

    一.简介 函数是可重用的程序代码块.函数的作用,不仅可以实现代码的复用,更能实现代码的一致性.一致性指的是,只要修改函数的代码,则所有调用该函数的地方都能得到体现. 函数用关键字def来定义,def关 ...

  4. Python源码学习:Python函数浅析-函数闭包

    Python源码分析 本文环境python2.5系列 参考书籍<<Python源码剖析>> 上一篇分析了函数参数的分析后,本文分析函数闭包的实现.函数闭包即函数定义和函数表达式 ...

  5. querywrapper or and嵌套_两个经常用的逻辑函数AND函数,OR函数

    在逻辑函数里AND函数,OR函数是使用频率是比较高的函数,但像NOT函数和XOR两个函数就略显鸡肋了. 今天我们重点对前两个函数进行讲述,后两个大家可以自行查看下,知道就行了,等哪天可以用上的时候再进 ...

  6. R语言使用trimws函数:trimws函数去除(删除、remove)字符串头尾的空格

    R语言使用trimws函数:trimws函数去除(删除.remove)字符串头尾的空格 目录 R语言使用trimws函数:trimws函数去除(删除.remove)字符串头尾的空格

  7. R语言使用integrate函数进行函数积分计算实战

    R语言使用integrate函数进行函数积分计算实战 目录 R语言使用integrate函数进行函数积分计算实战 #自定义函数 #积分操作

  8. R语言ggplot2使用geom_line函数geom_point函数可视化哑铃图、并对哑铃图进行排序(reorder dumbbell plot)

    R语言ggplot2使用geom_line函数geom_point函数可视化哑铃图.并对哑铃图进行排序(reorder dumbbell plot) 目录

  9. R语言ggplot2可视化:将dataframe和数据列名称传递给函数通过函数进行ggplot2可视化输出

    R语言ggplot2可视化:将dataframe和数据列名称传递给函数通过函数进行ggplot2可视化输出 目录

最新文章

  1. CVPR 2020 | CentripetalNet:目标检测新网络,COCO 48 % AP超现所有Anchor-free网络
  2. 10、Power Map—自定义地图背景
  3. 2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - CC++大学B组 - B.既约分数
  4. S2SH CRUD 整合
  5. 7-2 银行家算法--申请资源 (30 分)
  6. c语言字符串文库总结,C语言程序设计入门:字符串函数
  7. Intel超线程技术 Hyper-Threading Technology (1) - 引言与历史
  8. Leetcode每日一题:4.寻找两个有序数组的中位数
  9. nginx location配置详细解释
  10. vmcore分析和实战
  11. MySQL数据库的主键和外键详解
  12. mysql 定时备份脚本
  13. ppt变成了图片不能编辑文字怎么办_解决PPT字体缺失这个问题,这个技巧你一定要掌握...
  14. 室友还不知道FAST中国天眼是什么,快把这篇文章推给他,浅学一手卫星通信
  15. 计算机硬盘有坏道,硬盘有坏道就不能用了吗?别再吃哑巴亏了,今天跟大家再说一次!...
  16. E.03.17 Lou Ottens, Father of Countless ==Mixtapes==, Is Dead at 94
  17. C++“(已隐式声明)--它是已删除的函数 ” “尝试引用已删除的函数”知识点MARK
  18. Linux 环境下配置远程jupyter notebook server
  19. “听鉴红古轩——赵鹏郭宴HIFI金曲音乐会”圆满落幕
  20. 关于win10安装PingFangThin字体后换不回来的问题

热门文章

  1. 【组播技术入门 02】组播IP地址及组播MAC地址
  2. PERT II型管简介
  3. python窗体开发_python开发窗体
  4. 微信小程序界面设计小程序中CSS3样式精通课程-边框-box-shadow 盒阴影
  5. 【Cavali风格/优质羊毛混纺面料/高密抗静电里衬/撞色拼皮/立领/绿色/便装单西】玛萨玛索男装网购商城...
  6. 【Centos】centos挂载硬盘方法 及挂载卸载过程出现错误
  7. https详解之 根证书、服务器证书、用户证书的区别 jg证书
  8. 重磅:分享Matlab GUI和App计算器源代码(后续)
  9. SAP报错:没有为会计年度0定义版本2017
  10. TCP的连接和释放连接(三次握手和四次挥手的过程)