2017年8月21日月曜日

ネットワークで遊ぶ

 昨日作ったクローラーでなにかしようと思い、いい感じの閉鎖コミュニティでいい感じのユーザー数なハッシュタグで、大体16:30頃から5時間クローラーを動作させてみました。

 ツイート数は405。全部拾えているのかどうかは未確認。クローラーではツイートをした人のuser_idを取得しておいたので、重複する人を無くしてユーザーリストを作成したところ102名でした。

 これら102名のフォロー関係をネットワークにする。APIにてそれぞれのフォロワー一覧を取得し102名の隣接行列を作成した。この際twitter APIの関係から15人分取得するのに15分かかってしまうので、100分ほど待機。

 それさえ終わってしまえばあとはネットワークのパッケージを使うだけの話。先日igraph使ったし試すかとも思ったのだけれど、pythonでigraph使うための準備が面倒そうだったので、そのさらに以前に触ったnetworkxを使ってとりあえず作成してみた。調べてみたらnumpyの隣接行列からそのままネットワークを作れるようなので、そのまま打ち込むだけでした。

import networkx as nx
import matplotlib.pyplot as plt

Graph=nx.from_numpy_matrix(follower_matrix)
nx.draw(graph)
plt.show()

こんだけ。




networkxの使い方をいまいちわかっていないので、これ以上は今日は進めず終わろう。
周辺部のノードを除いて各種パラメタを求めようかな。102ノードそれぞれから到達可能なノードの数を求めて、最大値を返すものの一群をとりだせばいいか。
明日から沖縄行ってきます。

0 件のコメント:

コメントを投稿