R から TogoWS RESTful API をつかうパッケージをつくってます
http://github.com/nakao/togows-on-r/tree/master で R から TogoWS RESTful API を利用するパッケージをつくっています。
インストール方法
- git clone git://githum.com/nakao/togows-on-r.git
- cd togows-on-r
- R CMD build togows
- R CMD install togows
使い方
R を起動ののち、library(togows) します。
$ R R version 2.8.1 (2008-12-22) Copyright (C) 2008 The R Foundation for Statistical Computing ISBN 3-900051-07-0 Rはフリーソフトウェアであり、「完全に無保証」です。 一定の条件に従えば、自由にこれを再配布することができます。 配布条件の詳細に関しては、'license()'あるいは'licence()'と入力してください。 Rは多くの貢献者による共同プロジェクトです。 詳しくは'contributors()'と入力してください。 また、RやRのパッケージを出版物で引用する際の形式については 'citation()'と入力してください。 'demo()'と入力すればデモをみることができます。 'help()'とすればオンラインヘルプが出ます。 'help.start()'でHTMLブラウザによるヘルプがみられます。 'q()'と入力すればRを終了します。 > library(togows) 要求されたパッケージ RCurl をロード中です
エントリ取得 togows_entry
> togows_entry("pubmed/12345678/ti") [1] "Denpasar Declaration on Population and Development."
togows_entry(togows) は次の引数を取ることができる:
http://togows.dbcls.jp/entry/pubmed/16381885
- togows_entry("pubmed/16381885")
- togows_entry("pubmed", "16381885")
- togows_entry(db="pubmed", id="16381885")
http://togows.dbcls.jp/entry/pubmed/16381885,19199708
- N.A.
http://togows.dbcls.jp/entry/pubmed/16381885/au
- togows_entry("pubmed/16381885/au")
- togows_entry("pubmed/16381885", field="au")
- togows_entry("pubmed", "16381885", "au")
- togows_entry(db="pubmed", id="16381885", field="au")
http://togows.dbcls.jp/entry/pubmed/16381885.json
- togows_entry("pubmed/16381885.json")
- togows_entry("pubmed/16381885", format="json")
- togows_entry("pubmed", "16381885", format="json")
- togows_entry(db="pubmed", id="16381885", format="json")
http://togows.dbcls.jp/entry/pubmed/16381885/au.json
- togows_entry("pubmed/16381885/au.json")
- togows_entry("pubmed", "16381885", "au", "json")
- togows_entry(db="pubmed", id="16381885", field="au", format="json")
データベース検索 togows_search
> togows_search("uniprot", "ATP") [1] "P94956_MICLU" "Q3DV18_STRAG" "Q4EAM5_9RICK" "Q3D7X7_STRAG" "Q9XPB2_PHAAU" [6] "P94955_MICLU" "Q7IMS7_9TELE" "Q8HQL7_AMICA" "Q8HQM9_LEPOC" "Q8HQP2_ACITR" [11] "Q94NT5_9TELE" "Q94YP1_PANBU" "Q94YQ2_9TELE" "Q954Z0_NOEBA" "Q954Z2_MISFO" [16] "Q954Z4_9TELE" "Q954Z6_9TELE" "Q954Z8_9TELE" "Q955A0_9TELE" "Q955A3_9TELE" [21] "Q955A4_9TELE" "Q955A6_9TELE" "Q955A7_9TELE" "Q955A8_9TELE" "Q955B0_9TELE" [26] "Q955B2_9TELE" "Q955B4_9TELE" "Q955B6_9TELE" "Q955B8_9TELE" "Q955C1_9TELE" [31] "Q955C3_9TELE" "Q955C5_9TELE" "Q955C7_9TELE" "Q955D1_9TELE" "Q955D3_9TELE" [36] "Q955D5_9TELE" "Q955D7_9TELE" "Q955D9_9TELE" "Q955E1_9TELE" "Q955E3_9TELE" [41] "Q07299_MAIZE" "A0ZRR5_9TELE" "Q9HNK6_HALSA" "Q98RU6_GUITH" "Q26598_SCHMA" [46] "Q26599_SCHMA" "Q7IMS5_9TELE" "Q8HQL6_AMICA" "Q8HQM8_LEPOC" "Q8HQP1_ACITR" [51] "Q94NG4_9TELE" "Q94NP3_9TELE" "Q94YP0_PANBU" "Q94YQ1_9TELE" "Q954Y9_NOEBA" [56] "Q954Z1_MISFO" "Q954Z3_9TELE" "Q954Z5_9TELE" "Q954Z7_9TELE" "Q954Z9_9TELE" [61] "Q955A1_9TELE" "Q955A2_9TELE" "Q955A5_9TELE" "Q955A9_9TELE" "Q955B1_9TELE" [66] "Q955B3_9TELE" "Q955B5_9TELE" "Q955B7_9TELE" "Q955B9_9TELE" "Q955C0_9TELE" [71] "Q955C2_9TELE" "Q955C4_9TELE" "Q955C6_9TELE" "Q955C8_9TELE" "Q955C9_9TELE" [76] "Q955D0_9TELE" "Q955D2_9TELE" "Q955D4_9TELE" "Q955D6_9TELE" "Q955D8_9TELE" [81] "Q955E0_9TELE" "Q955E2_9TELE" "Q4PJ02_PROMO" "Q95S08_DROME" "Q75XW1_HORVU" [86] "Q0H2X2_9ACTO" "Q944E9_ORYSA" "Q9RFL3_SALTY" "Q93Q44_CLOPA" "Q7Z4W0_HUMAN" [91] "O15897_BABBO" "Q8VT50_STRPN" "B1PMB4_CHRVI" "Q8KRV0_9FUSO" "Q9RFL5_SALTY" [96] "Q8VV79_COLMA" "Q93Q46_CLOPA" "Q93Q43_CLOPA" "Q52MC0_PSESZ" "Q8KRU9_9FUSO"
togows_search(entry) は次の引数をとることができる:
http://togows.dbcls.jp/search/uniprot/ATP
- togows_search("uniprot/ATP")
- togows_search(db="uniprot", query_string="ATP")
http://togows.dbcls.jp/search/uniprot/ATP/count
- togows_search("uniprot/ATP/count")
- togows_search("uniprot/ATP", count=T)
- togows_search("uniprot", "ATP", count=T)
- togows_search(db="uniprot", query_string="ATP", count=T)
http://togows.dbcls.jp/search/uniprot/ATP/1,10
- togows_search("uniprot/ATP/1,10")
- togows_search("uniprot/ATP", offset=1, limit=10)
つくりかた
$ R > require('RCurl')
togows_entry と togows_search を定義してから、
> package.skeleton(name="togows", list = c('togows_entry', 'togows_search')) Creating directories ... Creating DESCRIPTION ... Creating Read-and-delete-me ... Saving functions and data ... Making help files ... Done. Further steps are described in './togows/Read-and-delete-me'.
パッケージのひな形を作成。つぎに、./togows ディレクトリにパッケージのスケルトンができる。自動作成された DESCRIPTION や R スクリプト、man/togows_search.Rd などを編集する。
ライブラリの依存関係を DESCRIPTION に追記。
Depends: RCurl
ドキュメントファイル man/togows*.Rd
- Keyword は http://b-src.cbrc.jp/markup/R-2.8.0/doc/KEYWORDS を参照して、IO と connecion にした。
内容の更新と修正を、パッケージのチェック R CMD check togows が通るまでを繰り返す。
まとめ
- R パッケージとして開発をはじめた。
- ドキュメントを整備して BioConductor もしくは CRAN に投稿したい。