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 = Lall.x = Lall.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 指定合并行。如果用名称指定,则必须唯一对应于输入中的命名列。

相关推荐
码艺-Alimjan几秒前
Vue项目源码备份最佳实践:无视node_modules,打包体积仅2MB
前端·javascript·vue.js
starrocks_stella29 分钟前
StarRocks 如何查询 Paimon 半结构化数据?Variant、Shredding 与 SQL 实践
数据库
这个DBA有点耶1 小时前
MySQL迁移实战:从mysqldump到专业工具的完整选型指南
数据库·mysql·dba
小白说大模型1 小时前
LLM集成数据库的幻觉治理:当AI给出的SQL建议是错的
数据库·人工智能·sql·oracle·重构·开源
风月说与山鬼2 小时前
十二、Vue插件
前端·vue.js
zcmodeltech2 小时前
工程机械与矿山机械沙盘模型多系统协同控制系统设计:基于STM32与Modbus RTU的露天开采-井下掘进-智慧矿山全场景联动方案
数据库·stm32·单片机·嵌入式硬件·制造·多分类
曹牧2 小时前
Oracle:空值排序
数据库·oracle
SelectDB2 小时前
Apache Doris 与 StarRocks 深度对比:2026 年 OLAP 引擎选型指南
数据库
lbb 小魔仙2 小时前
谁替 AI Agent 记住时间?——从航海钟到智能数据库,三百年时延坍缩史
数据库·人工智能·db
这个DBA有点耶3 小时前
读懂半连接:IN/EXISTS子查询什么时候快、什么时候慢?
数据库·性能优化·架构