0

ウェイト オブジェクトを作成します。

import pysal as ps
neighbors = {0: [3, 1], 1: [0, 2, 2], 2: [1, 2], 3: [0, 1, 1]}
weights = {0: [1, 1], 1: [1, 1, 1], 2: [1, 1], 3: [1, 1, 1]}
w = ps.W(neighbors, weights)

のWeights オブジェクトにpysalは、次のような neighbors 属性があります。

w.neighbors

dict: を返します{0: [3, 1], 1: [0, 2, 2], 2: [1, 2], 3: [0, 1, 1]}

pysal のapiをチェックしたところ、すべてのネイバーの合計数ではなく、ネイバーの数について何かを返す多くのメソッドと属性が見つかりました。

上記の場合、次のwようなものを返したい: {0: 2, 1: 3, 2: 2, 3: 3}。次のように dict をループする代わりに:

n_nbrs = dict()
for key, value in w.neighbors.items():
    n_nbrs[key] = len(value)

これを達成する簡単な方法はありますか?

4

1 に答える 1