用法:
DataFrame.merge(right, on=None, left_on=None, right_on=None, left_index=False, right_index=False, how='inner', sort=False, lsuffix=None, rsuffix=None, indicator=False, suffixes=('_x', '_y'))
通过按列或索引执行 database-style 连接操作来合并 GPU DataFrame 对象。
- right:DataFrame
- on:标签或清单;默认为无
要加入的列或索引级别名称。这些必须在两个 DataFrame 中都可以找到。
如果 on 是 None 并且不合并索引,则默认为两个 DataFrame 中列的交集。
- how:{‘left’, ‘outer’, ‘inner’, ‘leftsemi’, ‘leftanti’},默认 ‘inner’
要执行的合并类型。
left:仅使用左帧中的键,类似于 SQL 左外连接。
对:不支持。
外部:使用来自两个帧的键并集,类似于 SQL 完全外部联接。
内部:使用来自两个帧的键的交集,类似于 SQL 内部连接。
- 左半类似于
inner
join,但只返回列 来自左侧数据帧并忽略右侧数据帧中的所有列。
- 左半类似于
leftanti :仅返回左侧 DataFrame 中未匹配记录的行列。这与
leftsemi
join 完全相反。
- left_on:标签或列表,或array-like
要在左侧 DataFrame 中加入的列或索引级别名称。也可以是左侧DataFrame长度的数组或数组列表。这些数组被视为列。
- right_on:标签或列表,或array-like
要在右侧 DataFrame 中加入的列或索引级别名称。也可以是正确DataFrame长度的数组或数组列表。这些数组被视为列。
- left_index:布尔值,默认为 False
使用左侧 DataFrame 中的索引作为连接键。
- right_index:布尔值,默认为 False
使用右侧 DataFrame 中的索引作为连接键。
- sort:布尔值,默认为 False
从左侧开始,按合并的列对生成的 DataFrame 进行排序。
- suffixes: Tuple[str, str], defaults to (‘_x’, ‘_y’):
应用于左侧和右侧重叠列名的后缀
- merged:DataFrame
参数:
返回:
注意:
cuDF 中的 DataFrames 合并导致不确定的行排序。
例子:
>>> import cudf >>> df_a = cudf.DataFrame() >>> df_a['key'] = [0, 1, 2, 3, 4] >>> df_a['vals_a'] = [float(i + 10) for i in range(5)] >>> df_b = cudf.DataFrame() >>> df_b['key'] = [1, 2, 4] >>> df_b['vals_b'] = [float(i+10) for i in range(3)] >>> df_merged = df_a.merge(df_b, on=['key'], how='left') >>> df_merged.sort_values('key') key vals_a vals_b 3 0 10.0 0 1 11.0 10.0 1 2 12.0 11.0 4 3 13.0 2 4 14.0 12.0
仅在某些情况下才允许合并分类变量
分类变量类型转换逻辑取决于
how
和要合并的分类变量的细节。当只有一侧被排序时合并分类变量是不明确的并且不允许的。当两个分类都排序时允许合并,但只有当类别完全相等且具有相同的顺序时,才会产生公共 dtype。当两边都无序时,结果分类取决于连接的类型: - 对于内部连接,结果将是类别的交集 - 对于左连接或右连接,结果将分别是左或右 dtype。这延伸到半连接和反连接。 - 对于外连接,结果将是双方类别的并集。
相关用法
- Python cudf.DataFrame.median用法及代码示例
- Python cudf.DataFrame.mean用法及代码示例
- Python cudf.DataFrame.memory_usage用法及代码示例
- Python cudf.DataFrame.mod用法及代码示例
- Python cudf.DataFrame.multiply用法及代码示例
- Python cudf.DataFrame.mul用法及代码示例
- Python cudf.DataFrame.mask用法及代码示例
- Python cudf.DataFrame.mode用法及代码示例
- Python cudf.DataFrame.min用法及代码示例
- Python cudf.DataFrame.max用法及代码示例
- Python cudf.DataFrame.isin用法及代码示例
- Python cudf.DataFrame.rmul用法及代码示例
- Python cudf.DataFrame.apply用法及代码示例
- Python cudf.DataFrame.exp用法及代码示例
- Python cudf.DataFrame.drop用法及代码示例
- Python cudf.DataFrame.where用法及代码示例
- Python cudf.DataFrame.to_pandas用法及代码示例
- Python cudf.DataFrame.take用法及代码示例
- Python cudf.DataFrame.tail用法及代码示例
- Python cudf.DataFrame.rfloordiv用法及代码示例
注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cudf.DataFrame.merge。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。