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


Python NetworkX random_kernel_graph用法及代碼示例


本文簡要介紹 networkx.generators.random_graphs.random_kernel_graph 的用法。

用法:

random_kernel_graph(n, kernel_integral, kernel_root=None, seed=None)

返回基於指定內核的隨機圖。

該算法以內核 [1] 指定的概率選擇每個 可能的邊。內核 必須是對稱(在 中)、非負、有界函數。

參數

nint

節點數

kernel_integral函數

返回內核定積分的函數 ,

kernel_root: function (optional)

返回方程 的根 的函數。如果沒有,則使用 scipy.optimize.brentq() 找到根(這需要 SciPy)。

seed整數、random_state 或無(默認)

隨機數生成狀態的指示符。請參閱隨機性。

注意

內核通過其定積分指定,必須作為參數之一提供。如果可以在 時間內找到積分和內核積分的根,則該算法將在 時間內運行,其中 m 是預期的邊數 [2]。

節點設置為從 的整數。

參考

1

Bollobás, Béla, Janson, S. and Riordan, O. “The phase transition in inhomogeneous random graphs”, Random Structures Algorithms, 31, 3-122, 2007.

2

Hagberg A, Lemons N (2015), “Fast Generation of Sparse Random Kernel Graphs”. PLoS ONE 10(9): e0135177, 2015. doi:10.1371/journal.pone.0135177

例子

生成一個 Erdős-Rényi 隨機圖 ,使用內核 其中 是平均預期度數。

>>> def integral(u, w, z):
...     return c * (z - w)
>>> def root(u, w, r):
...     return r / c + w
>>> c = 1
>>> graph = nx.random_kernel_graph(1000, integral, root)

相關用法


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