當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python cugraph.structure.symmetrize.symmetrize_df用法及代碼示例

用法:

cugraph.structure.symmetrize.symmetrize_df(df, src_name, dst_name, multi=False, symmetrize=True)

獲取存儲在 DataFrame 中的 COO,以及源列和目標列的列名,並使用使圖形對稱的相同列名創建一個新的 DataFrame ,以便所有邊都出現在兩個方向上。請注意,如果 DataFrame 中存在其他列(例如邊權重),其他列也將被複製。也就是說,如果 (u,v,data) 表示輸入數據中的源值 (u)、目標值 (v) 和一些其他列 (data),那麽輸出數據將同時包含 (u,v, data) 和 (v,u,data) 與匹配的數據。如果 (u,v,data1) 和 (v,u,data2) 存在於 data1 != data2 的輸入數據中,則此代碼將任意選擇要保留的較小數據元素,如果不需要,則調用者應更正調用對稱之前的數據。

參數

dfcudf.DataFrame

包含 COO 的輸入 DataFrame 。列應包含源 ID、目標 ID 和與邊關聯的任何屬性。

src_namestring

DataFrame 中包含源 ID 的列的名稱

dst_namestring

DataFrame 中包含目標 ID 的列的名稱

multi布爾,可選(默認=假)

如果圖形是 Multi(Di)Graph,則設置為 True。這允許多個邊而不是丟棄它們。

symmetrize布爾,可選(默認=真)

默認為 True 以執行對稱化。如果為 False,則僅刪除重複的邊。

例子

>>> from cugraph.structure.symmetrize import symmetrize_df
>>> # Download dataset from https://github.com/rapidsai/cugraph/datasets/..
>>> M = cudf.read_csv(datasets_path / 'karate.csv', delimiter=' ',
...                   dtype=['int32', 'int32', 'float32'], header=None)
>>> sym_df = symmetrize_df(M, '0', '1')

相關用法


注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cugraph.structure.symmetrize.symmetrize_df。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。