R语言【base】——merge(): 通过共同列名或行名合并两个数据帧

Package base version 4.2.0


Parameters

R 复制代码
merge(x, y, ...)

## Default S3 method:
merge(x, y, ...)

## S3 method for class 'data.frame'
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"), no.dups = TRUE,
      incomparables = NULL, ...)

参数【x,y】:数据帧或对象被强制为一个数据帧。

参数【by,by.x,by.y】:用于合并的列的规范。

参数【all】:逻辑值;all = L 是 all.x = L 和 all.y = L的简称,其中 L 表示 TRUE 或 FALSE。

参数【all.x】:逻辑值;如果为 TRUE,则输出中将添加额外的行,即使参数【x】中的每一行在参数【y】 中都没有匹配的行。这些行将在通常由参数【y】值填充的列中添加 NA。默认值为 FALSE,因此输出中只包含同时来自参数【x,y】的数据行。

参数【all.y】:逻辑值;类似于参数【all.x】。

参数【sort】:逻辑值。结果是否应按 "by" 列排序?

参数【suffixes】:长度为 2 的字符向量,用于指定后缀,使结果中不用于合并(出现在 by 中等)的列名具有唯一性。

参数【no.dups】:逻辑值,表示在更多情况下会添加后缀,以避免结果中出现重复的列名。

参数【incomparables】:无法匹配的值。此功能用于合并一列,因此这些值是该列的不可比值。

参数【...】:参数传递给方法或从方法中传递参数。


Details

merge 是一个通用函数,主要用于数据帧:默认方法会将参数强制转换为数据帧,并调用 "data.frame" 方法。

默认情况下,数据帧会根据列名合并,但也可以通过参数【by.x,by.y】分别指定列名。提取两个数据帧中在指定列上匹配的行,并将其连接在一起。如果有多个匹配项,则所有可能的匹配项各占一行。

可以通过名称、数字或逻辑向量指定要合并的列:使用 "row.names" 或者数字0 指定合并行。如果用名称指定,则必须唯一对应于输入中的命名列。

相关推荐
北冥有鱼9 分钟前
发版后动态路由点击报 `Failed to fetch dynamically imported module`」问题上的完整排查与修复过程
前端·vue.js
snow@li18 分钟前
PowerDesigner 全景教程:从业务建模、表结构设计、关系管理到正向/逆向、文档输出
数据库
ss27322 分钟前
PostgreSQL表级锁、行级锁、轻量级锁
数据库·postgresql·区块链
RacentCLM39 分钟前
证书即服务CaaS:从申请、续期到部署的自动化链路拆解
运维·数据库·自动化·ssl
SelectDB1 小时前
安全评审卡了三周,我把部署形态的四种选项重新排了一遍
大数据·数据库·云原生
Random Glow3 小时前
二级索引与回表:一次回表到底多贵
数据库·mysql·性能优化·innodb·索引
CarIise3 小时前
JDBC 与数据库事务核心
数据库·笔记
apollo_qwe3 小时前
大模型 API 接通了,AI 聊天页面为什么还是不好用?
前端·vue.js·人工智能
见闻小天地3 小时前
新手入门:印刷包装设备的伺服和PLC运动控制方案各管什么?七步选型讲清楚
运维·网络·数据库·人工智能