さて、ちょっと遅くなりましたが、前回の続きです。
“『入門ソーシャルデータ』第4章を読む(2)” の続きを読む
次の段階、次のつながり、次の時代、次の世代・・・、さまざなま『次』のために、NPO/NGO や web で何ができるのかを考えます。
カテゴリー: 集合知/ソーシャルデータ関連
今週金曜日(2012/2/10)、こちらのイベントでプレゼンを担当します。
このイベントは、オライリーの『入門ソーシャルデータ』を参加者同士で一章ずつ担当して読み進めていこう、という連続勉強会で、この日ではそのうちの第4章を担当することになっています。
それに先立って、事前にこの章をひと通り読み進めてみましたので、その過程を書き留めていきます。参考になれば幸いです。書いてみたら長くなったので2回に分けます。これはその1回目。
最近読んでいる本『入門ソーシャルデータ』で、フローチャートやグラフ理論(ノードとエッジの集合)を表現するためのDOT言語と、これを入力にして可視化画像を生成できるツールGraphvizを知りました。
例えばこんな入力から、
strict digraph {
"ノード1" -> "ノード2" [label="エッジA"];
"ノード2" -> "ノード3" [label="エッジB"];
"ノード2" -> "ノード4" [label="エッジC"];
}
こんな感じの絵が描けます。
「…あれ、これって何かに使えるような…」と考えて、「そうだ、これを使ってJリーグの選手の今オフの移籍情報を可視化してみると面白いかも!」と思いつきました。
いま使っているOSX上には複数のバージョンのpythonが入りうるのですが、その切替をできるようにしました。GAE開発用には2.5系、それ以外のときは最新環境として2.7系を使いたいので。ただし、ちょっと前にやったことなので不完全かもしれませんが…。
いくつかのブログを見たところ、「python_selectを使え」的な記述をよく見かけますが、どうやらこれは古い情報のようで、「python_selectは死んだ」なんて記事もありました。どうやらMacPortsの仕様変更とのこと。
なので、まずはMacPorts自体をアップデート。
sudo port selfupdate
sudo port sync
で、現在切り替えられるpythonを確認するために
port select --list python
とすると、
Available versions for python:
none
python25
python25-apple
python26-apple
python27-apple (active)
なような表示がでてきます。現在activeなのは2.7、ということですね。バージョンを切り替えるには、
sudo port select --set python python25
で切り替わります。
Available versions for python:
none
python25 (active)
python25-apple
python26-apple
python27-apple
これで出来ました。
また、ライブラリを読み込みeasy_installも、おそらくコマンド実行時にactiveなバージョンのpythonでのみ使えるようにインストールされるものと思われます。easy_installでインストールすると、 /Library/Python/(バージョン)/site-packages/ 配下に格納されるようです。
GAEの開発にはeclipseを使っていますが、python2.7系を使う時にもeclipseが使えると便利ですよね。
それには、Preferences の画面から PyDev の Interpreter – Python を開きます。すると、現在使えるように設定されているバージョン(のインタプリタ=実行ファイル)が表示されますので、ここに利用したいバージョンのpythonの実行ファイル(port select で切り替えておいて which pythonで所在はわかりますね)を Add してやると、該当するライブラリをPYTHONPATHとして読み込んでくれます。便利!
そして、該当プロジェクトの Properties の画面から PyDev – Interpreter/Grammar を開きます。そこで、Interpreter の欄に先程設定したものを指定すると、そのバージョンのpythonで実行してくれる、というわけですね。一応、Grammar Versionもあわせておいたほうがいいでしょう。
これで、コマンドラインからeasy_installしたライブラリをeclipseでも使えるようにもなりました。
とりあえずこれで切り替わってるように思えますが、もし間違ってたり「もっとこうしたほうがいいよ」ということがありましたらコメントしてもらえると助かります。
昨年の12月15日、atndさんで見つけた、以下の勉強会に出てきました。
第13回「集合知プログラミング」真面目に勉強する会 @外苑前
きっかけは、「自分が働いているNGOの支援者データベースに蓄積された情報から、より有意義な情報を見つけるためにどうすればいいか」と考えていたことでした。「それには、いま現在自分が持っている知識とは全く別の視点が必要ではないのか?」と思っていたこともあります。「もしかしてそれが集合知なのかも」ということですね。
とはいっても、この勉強会は一冊の本『集合知プログラミング』を参加者で輪読していく連続もので、しかもこの回が最終回。ということで、それでも参加OKなのか主催者のひとりであるKshi_Kshiさんにtwitterで問い合わせたところ、快諾をいただきましたので参加してきました。当日の朝に買った本を持って(汗)。