用法:
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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。