# merge-合并
调用merge函数按条件连接两个增强数据表。
最小支持版本:5.0.0
# 接口说明
参与连接操作的左右表不得为空表。
# 语法
DataFrame.merge(<left>, <right>, <how>, <on>, <leftOn>, <rightOn>, <leftIndex>, <rightIndex>, <sort>, <leftSuffix>, <rightSuffix>, <copy>, <indicator>, <validate>)
1
DataFrame.合并(<left>, <right>, <how>, <on>, <leftOn>, <rightOn>, <leftIndex>, <rightIndex>, <sort>, <leftSuffix>, <rightSuffix>, <copy>, <indicator>, <validate>)
1
# 函数类型
静态函数
# 请求参数
参数名称 | 类型 | 是否必选 | 默认值 | 示例值 | 描述 |
---|---|---|---|---|---|
left | Cube.System.DataFrame | 是 | 无 | 增强数据表.解析文本为增强数据表("A,B,C\r\n1,2,3", {"sep":",","header":1}) | 参与两表连接操作的左表。 |
right | Cube.System.DataFrame | 是 | 无 | 增强数据表.解析文本为增强数据表("E,F,G\r\n1,2,3", {"sep":",","header":1}) | 参与两表连接操作的右表。 |
how | Cube.Lang.String | 是 | 无 | "left" | 两表的链接方式。取值: "left":左连接 "right":右连接 "outer":外连接 "inner":内连接 "cross":交叉连接 |
on | Cube.Object | 是 | 无 | "A" | 指定用于连接的键(列名),键必须在两个Dataframe中都存在。如果没有指定,并且其他参数也没有指定,那么使用两个Dataframe的列名的交集作为连接键。 |
leftOn | Cube.Object | 是 | 无 | null | 左侧DataFrame中用作连接的列或索引级别名称。该参数一般在需要合并的左右列名称不相同时使用。 |
rightOn | Cube.Object | 是 | 无 | 无 | 右侧DataFrame中用作连接的列或索引级别名称。该参数一般在需要合并的左右列名称不相同时使用 |
leftIndex | Cube.Lang.Boolean | 是 | true | 无 | 是否使用左侧的Dataframe的Index作为连接键。true-使用左侧Dataframe的Index作连接键,false-不使用左侧Dataframe的Index作连接键。默认为false |
rightIndex | Cube.Lang.Boolean | 是 | true | 无 | 是否使用右侧的Dataframe的Index作为连接键。true-使用右侧Dataframe的Index作连接键,false-不使用右侧Dataframe的Index作连接键。默认为false |
sort | Cube.Lang.Boolean | 是 | true | 无 | 是否在合并后的Dataframe上使用字典序进行排序。true-排序,false-不排序。默认为false。如果为false,连接键的顺序取决于连接类型(how关键字) |
leftSuffix | Cube.Lang.String | 是 | 无 | 无 | 左侧重叠列名的后缀 |
rightSuffix | Cube.Lang.String | 是 | 无 | 无 | 右侧重叠列名的后缀 |
copy | Cube.Lang.Boolean | 是 | true | 无 | 是否拷贝原始数据。true-拷贝,false-不拷贝。默认为false |
indicator | Cube.Object | 是 | 无 | 无 | 是否在拼接后的Dataframe中添加一个名为“_merge”的列,其中包含关于每一原始行的信息。true-添加原始行信息列,false-不添加原始行信息列。默认为false |
validate | Cube.Lang.String | 是 | 无 | 无 | 检查merge是否属于指定的类型。可选值有以下四种:one_to_one/1:1,表示检查合并键是否在左右数据集中都是唯一的;one_to_many/1:m,表示检查合并键在左侧数据集中是否是唯一的;many_to_one/m:1,表示检查合并键在右侧数据集中是否是唯一的;many_to_many/m:m,表示都允许,但是不会检查结果 |
# 返回参数
参数名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
Result | Cube.System.DataFrame | Dataframe对象 | 返回左右增强数据表连接后生成的增强数据表。 |
# 请求示例
Dataframe.merge(invoke_df1_left, invoke_df2_right, "left", null, "A", "A", false, false, false, "Left", "right", false,false , "m:m")
1
最近更新时间: {
"value": "2023-09-12",
"effect": true
}