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