2013年02月たのしいPython今夜コードを書いているすべてのヒトへプロフィールAuthor:辻真吾(つじしんご)www.tsjshg.infoいまは、大学の研究室を主な拠点に、色々やってます。このブログはPythonの話題が中心ですが、どちらかというと日々の仕事で使う知識を、自分のためにメモしたものです。万が一どなたかの役に立てば光栄です。factorization)を応用した手法を実装したPython用ライブラリにに、nimfaがあります。データマイニングソフトのOrangeにも採用されているようなので、使って見ました。こちらのGithubサイトから、レポジトリをzipファイルで取得して解凍。installで入れます。Library(PIL)が必要なので、なければこちらはpipなどで手軽に入れておきます。NMFはやはりいくつのクラスに分類するかがもっとも効いてくるパラメータですので、これを2から9でふるサンプルスクリプトを載せておきます。いっても、estimate_rankというメソッドがあるので便利です。データは、行方向に変数、列方向にサンプルが並んだテキストファイルを、ほとんど神といっても過言では無いPandasのDataFrameとして読み込んでいます。一部、nimfaのサンプルコードを利用しています。run_nmf(data)Consensus行列を可視化するとこんな感じになります。Lion)にしたからか、おそらく前者が原因なのですが、numpyをpipでお手軽に1.7にしようとしたら、こんなエラーが。statusfailure.MacOSXは、OSのupdateが気楽にできるので、上書き上書きでやって来ましたが、ちょっといろいろごちゃごちゃになってきたので、こんど時間があったら環境を構築し直したいなと思いつつ、こんな感じで解決。/usr/local/libこうしてまたごちゃごちゃ感が増す結果に。ちなみに、Xcodeを4.6にすることで解決するかと思いきや、解決はしませんでした。