第12回オープンバイオ研究会に参加してきました
ネタを3つ持っていきました.
3Dといっても目で見るものは2Dへの写像.その写像画でどういうものを可視化したいのか明確にすべき,という的確なアドバイスを頂けてよかったです.
他の方の発表としては
がありました.
relfinderはProteopediaとかSubtiWikiとかに適用して何か面白いことできないかな,などと思いました.
スーパーグラフプラグインについては仰る相関の概念が普通の相関係数とかの相関と異なっており,よく理解できませんでした.(もっと質問すべきでした.)
本来のg2sはスクロールと共にゲノムの塩基を読んでいき遺伝子の領域にくるとその遺伝子情報に応じて出現する敵を倒すシューティングゲームです.ぐるなび版は飲食店に応じて敵を出現させていると思うんですが地図情報をお店に応じてどう読んでるんでしょうか.
昔に比べるとオープンバイオ研究会の元気が若干無くなり気味らしいので我こそはという方,次のオープンバイオ研究会はJAISTであるそうなので是非何か発表されてみてはどうでしょうか.
RubyでCytoscapeのプラグインを作ってみる
最近Cytoscapeのコアデベロッパー、UCSDの大野さんが作成されたScript Engine プラグインがアップデートされ、Rubyで簡単なプラグインを書く方法を示してくれています。
http://cytoscape.wodaklab.org/wiki/RubyPlugin
この雛形を使わせて頂いてノードに化合物と反応のID情報のみがついているKEGGの代謝反応ネットワークに、その他の情報をノードアトリビュートとして付加するプラグインを書いてみました。(勢いで書いて、まだテストできてません。)
require 'java' require 'set' require 'bio' include_class 'cytoscape.Cytoscape' include_class 'cytoscape.plugin.CytoscapePlugin' include_class 'cytoscape.view.CyMenus' include_class 'cytoscape.util.CytoscapeAction' include_class 'cytoscape.data.CyAttributes' include_class 'cytoscape.CyNode' include_class 'cytoscape.CyEdge' include_class 'cytoscape.CyNetwork' include_class 'java.util.ArrayList' include_class 'java.awt.event.ActionEvent' include_class 'javax.swing.JOptionPane' class RubyAction < CytoscapeAction def initialize() super("Plugin written in Ruby") setPreferredMenu("Plugins") end def actionPerformed(evt) JOptionPane.showMessageDialog( nil, "Start retrieving reaction and compound attribute", "JRuby on Cytoscape", JOptionPane::INFORMATION_MESSAGE) nodes = Cytoscape.getCyNodeList attrs = Cytoscape.getNodeAttributes serv = Bio::KEGG::API.new node_id_for = Hash.new reaction_ids = "" compound_ids = "" nodes.each do |node| kegg_id = attrs.getAttribute(node.getIdentifier, "canonicalName") node_id_for[kegg_id] = node.getIdentifier case kegg_id when /^R/ reaction_ids.concat(" " + kegg_id.sub("R", "rn:R")) when /^C/ compound_ids.concat(" " + kegg_id.sub("C", "cpd:C")) end end reaction_entries = serv.bget(reaction_ids) compound_entries = serv.bget(compound_ids) reaction_entries.split("\n///\n").each do |reaction_entry| rn = Bio::KEGG::REACTION.new(reaction_entry) node_id = node_id_for[rn.entry_id] attrs.setAttribute(node_id, "enzymes", rn.enzymes.join(', ')) attrs.setAttribute(node_id, "equation", rn.equation) attrs.setAttribute(node_id, "pathways", rn.pathways.join(', ')) end compound_entries.split("\n///\n").each do |compound_entry| cpd = Bio::KEGG::COMPOUND.new(compound_entry) node_id = node_id_for[cpd.entry_id] attrs.setAttribute(node_id, "formula", cpd.formula) attrs.setAttribute(node_id, "name", cpd.name) attrs.setAttribute(node_id, "mass", cpd.mass) attrs.setAttribute(node_id, "pathways", cpd.pathways.join(', ')) end JOptionPane.showMessageDialog( nil, "Finished", "JRuby on Cytoscape", JOptionPane::INFORMATION_MESSAGE) ) end end class RubyPlugin < CytoscapePlugin def register_menu cyMenus = Cytoscape.getDesktop().getCyMenus() cyMenus.addAction(RubyAction.new) end end RubyPlugin.new.register_menu()
GithubにCytoscape用のrubyとかpythonのスクリプトを貯めていこうと思います。よろしくお願いします。
http://github.com/kozo2/rubyKEGGplugin
MacでのJAVA_HOME
Mavenとかで設定する際の参考に
export JAVA_HOME=/Library/Java/Home export JAVA=$JAVA_HOME/bin export M2_HOME=$HOME/apache-maven-2.2.0 export M2=$M2_HOME/bin export PATH=$M2:$JAVA:$PATH
みたいな感じでしょうか。
http://developer.apple.com/qa/qa2001/qa1170.html
ubuntu jaunty に ipa フォントを入れる
sudo aptitude install ttf-ipafont
でいいんでしょうか。
最近のbiopython環境構築方法について
最近はbiopythonもcvs以外にgithubでソース管理してるみたいです。そこで最近なりのbiopython環境構築方法まとめてみます。
biopythonのdependenciesにはnumpy, reportlab, MySQLdb, flexといったものがありますが、とりあえずnumpy以外のは絶対必要ってわけではないので省略します。もしグラフィックス関係とかやりたいならnumpy以外のも入れてください。
もしヘッダいれてなかったらsudo aptitude install python-dev的なこと事前にしておいてください。
それじゃ書いてみる。
とりあえずソースをとってくる
- virtualenv, numpy
cd mkdir sources cd sources svn co http://svn.colorstudy.com/virtualenv/trunk virtualenv svn co http://svn.scipy.org/svn/numpy/trunk numpy
- biopython(githubでforkしなくてもいいけどいずれ何か貢献できると信じて)
- ここ http://github.com/biopython/biopython/tree/master でforkボタンを押す
- git clone する。(kozo-niのとこは自分のに置き換えてください)
git clone git@github.com:kozo-ni/biopython.git
virtualenv環境を作るアンドactivate
cd cp sources/virtualenv/virtualenv.py ./ python virtualenv.py ENV source ENV/bin/activate
installしてく
- まずはnumpy
cd sources/numpy python setup.py build python setup.py install
- 次にbiopython
cd ../biopython python setup.py build python setup.py test python setup.py install
buildとtest飛ばして最初にinstallしてもいけると思いますけどね。一応インタラクティブシェルとかで
from Bio.Seq import Seq
とかやってみてください。
このやり方でうまくいかんかったら教えてください。
以上。
hdparmコマンドでHDDの情報を取得する
最近1TのHDDが売れてるようなので、自分のサーバのHDDはどんなもんかなと思い調べてみた。
sudo hdparm -I /dev/sda /dev/sda: ATA device, with non-removable media Model Number: WDC WD1601ABYS-18C0A0 Serial Number: WD-WCAS2C304244 Firmware Revision: 06.06H05 Transport: Serial, SATA 1.0a, SATA II Extensions, SATA Rev 2.5
Western Digital の160Gらしい。
ubuntuにおけるevinceで日本語pdfを見れるようにする
sudo aptitude install xpdf-japanese sudo aptitude install poppler-data
で多分大丈夫と思う