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

相关推荐
草莓熊Lotso1 小时前
【Linux网络】UDP Socket 编程全解析:从回显服务到通用字典服务,从零实现工业级代码
linux·运维·服务器·数据库·c++·单片机·udp
woxihuan1234568 小时前
SQL删除数据时存在依赖关系_设置外键级联删除ON DELETE
jvm·数据库·python
东风破1378 小时前
DM8达梦共享存储集群DSC搭建步骤
数据库·学习·dm达梦数据库
雪碧聊技术8 小时前
当数据库字段数大于Java实体类属性数时,MyBatis还能映射成功吗?一文详解
数据库·自动映射·mybatis映射机制·java实体类·宽容映射机制
Jetev9 小时前
如何确定SQL字段是否为空_使用IS NULL与IS NOT NULL
jvm·数据库·python
m0_702036539 小时前
mysql如何处理不走索引的OR查询_使用UNION ALL优化重写
jvm·数据库·python
代钦塔拉9 小时前
Qt4 vs Qt5 带参数信号槽的连接方式详解
开发语言·数据库·qt
2401_846339569 小时前
MySQL在云环境如何选择存储类型_SSD与高性能云盘配置建议
jvm·数据库·python
zhaoyong22210 小时前
SQL如何统计每个用户的首次行为时间_MIN聚合与分组
jvm·数据库·python
2501_9010064710 小时前
C#怎么实现配置热更新 C#如何在运行时动态刷新配置文件不需要重启程序【技巧】
jvm·数据库·python