ó žÃÒYc@ sWddlmZddlmZddlZddgZddddd„ZeZ dS(iÿÿÿÿ(tdivision(t defaultdictNtaverage_degree_connectivitytk_nearest_neighborssin+outc sMˆjƒr·|d kr'tdƒ‚n|d krBtdƒ‚niˆjd6ˆjd6ˆjd6}iˆjd6ˆjd6ˆjd6}||}||}||} |dk} n!ˆj}ˆj}ˆj} t} t t ƒ} t t ƒ} ||ƒ} |ˆkr |||ƒfg} nxÄ| D]¼\‰}|| ˆƒƒ}ˆd krjt d„|Dƒƒ}nM| r•t ‡‡‡fd†|Dƒƒ}n"t ‡‡‡fd†|Dƒƒ}| |c|ˆd ˆƒ7<| |c|7>> G=nx.path_graph(4) >>> G.edges[1, 2]['weight'] = 3 >>> nx.k_nearest_neighbors(G) {1: 2.0, 2: 1.5} >>> nx.k_nearest_neighbors(G, weight='weight') {1: 2.0, 2: 1.75} See also -------- neighbors_average_degree Notes ----- This algorithm is sometimes called "k nearest neighbors" and is also available as `k_nearest_neighbors`. References ---------- .. [1] A. Barrat, M. Barthélemy, R. Pastor-Satorras, and A. Vespignani, "The architecture of complex weighted networks". PNAS 101 (11): 3747–3752 (2004). tintoutsin+outs.source must be one of "in", "out", or "in+out"s.target must be one of "in", "out", or "in+out"cs s|]\}}|VqdS(N((t.0tntd((s„/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/algorithms/assortativity/connectivity.pys |sc3 s3|])\}}ˆ|ˆjˆdƒ|VqdS(iN(tget(RtnbrR(tGRtweight(s„/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/algorithms/assortativity/connectivity.pys sc3 s3|])\}}ˆˆ|jˆdƒ|VqdS(iN(R (RR R(R RR (s„/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/algorithms/assortativity/connectivity.pys sR i(sinsoutsin+out(sinsoutsin+outN(t is_directedt ValueErrort out_degreet in_degreetdegreet successorst predecessorst neighborstFalseRtinttNonetsumtitems(R tsourcettargettnodesR t directiontneighbor_funcst source_degreet target_degreeRtreversetdsumtdnormt source_nodestktnbrdegtstdctavgtnorm((R RR s„/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/algorithms/assortativity/connectivity.pyRsPG                    %"  ( t __future__Rt collectionsRtnetworkxtnxt__all__RRR(((s„/private/var/folders/w6/vb91730s7bb1k90y_rnhql1dhvdd44/T/pip-build-w4MwvS/networkx/networkx/algorithms/assortativity/connectivity.pyt s  w