バイオインフォマティクス人材育成カリキュラム ( 次世代シークエンサ ) 速習コース 3. データ解析基礎 3-4. R Bioconductor I 東京大学 大学院農学生命科学研究科アグリバイオインフォマティクス教育研究ユニット門田幸二 ( かどたこうじ ) kadota@iu.a.u-tokyo.ac.jp http://www.iu.a.u-tokyo.ac.jp/~kadota/ 1
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 2
R に慣れてくると Gui 画面上での煩雑な ファイル ディレクトリの変更 作業を効率的に行いたくなります 3
作業ディレクトリの変更 Windows(C:) となっている場合もあるが 気にしない 4 はヒトそれぞれ 1 2 3 4 5 6 7 4
作業ディレクトリの変更 Linux の pwd コマンドに相当するのが R の getwd() Linux のディレクトリ変更コマンド cd に相当するのが R の setwd() 重要なのは getwd() の出力結果を把握しておくことです 5
デスクトップの hoge と決めるなら ファイル名 :rcode_20140909.txt R を再起動してコピペ setwd 関数実行によって 作業ディレクトリの変更がコピペで完了していることが分かる 6
デスクトップの hoge と決めるなら ファイル名 :rcode_20140909.txt アグリバイオ貸与 PC はユーザ名が iu なのでエラーが出ないと思います 7
自分で解析していた頃のコード例 ファイル名 :rcode_translate2.txt 作業ディレクトリ変更を含んだ一連のコードを用意しておき R を起動直後にコピペ 8
自分で解析していた頃のコード例 ファイル名 :rcode_translate2.txt いくつかのテンプレートとして使う可能性のあるものを予め用意しておき 実際に使うもののみ # を外して利用していました 9
入力 : 塩基配列ファイル (sample1.fasta) 出力 : アミノ酸配列ファイル (hoge1.fasta) 10
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 11
データの型 1 ファイル名 :rcode_translate2.txt 左記のコード実行後の fasta オブジェクトにはアミノ酸配列情報が格納されていることが分かる AAStringSet の AA は Amino Acids ( アミノ酸 ) の略 AAStringSet クラスオブジェクトとか AAStringSet クラスなどと呼ばれるが 実用上は AAStringSet というものまたは型という程度の理解でよい 12
データの型 1 ファイル名 :rcode_translate2.txt fasta オブジェクトを入力として translate 関数を実行してもエラーが出る この理由は明確 translate 関数は塩基配列を入力としてアミノ酸配列を出力するものであり アミノ酸配列情報からなる fasta オブジェクトを入力とするのは想定外だから 13
データの型 1 ファイル名 :rcode_translate2.txt 塩基配列情報からなる fasta オブジェクトを入力としたときには正常に動作していた 当然ながら アミノ酸配列情報からなる fasta オブジェクトを入力としている以上 それと全く同じコードに変更してもエラーが出る 14
データの型 1 ファイル名 :rcode_translate2.txt エラーメッセージの全貌 translate 関数の基本動作が分かっている状態で眺め AAStringSet というアミノ酸配列情報を入力としているからダメ だと言われているのだろう という対策方針を立てるべし 15
エラーなのに正しい結果が得られている?! ファイル名 :rcode_translate2.txt 3 の hoge は 2 の実行結果として得られた hoge ではなく 1 の実行結果として得られた hoge です エラーが出ているのになぜかうまくいっている というわけではありません 単純に以前作成した同名オブジェクトの中身が残っていたというだけ 1 3 2 16
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 17
オブジェクトの消去は rm 関数を利用 ファイル名 :rcode_translate2.txt 以前作成した hoge オブジェクトの中身を消去すべく rm 関数を用いて hoge オブジェクトを消去 消去後に 再び translate 関数を実行した結果を hoge に格納しようとしてエラーが出ることを再確認 18
オブジェクトの消去は rm 関数を利用 ファイル名 :rcode_translate2.txt translate 関数実行結果を hoge に格納しようとしてエラーが出た場合は 本来 hoge が生成されないことを確認しているだけです ls 関数や objects 関数は 現在作成されているオブジェクトをリストアップ 確かに hoge は存在しないことが分かる 19
オブジェクトの消去は rm 関数を利用 ファイル名 :rcode_translate2.txt 現在作成されている全オブジェクトを全消去するやり方は rm(list = ls()) 消去後に再び ls 関数を用いて利用可能なオブジェクトを表示させようとしても何もないという結果が得られる character(0) は何もないという意味です 20
ファイル名 :rcode_translate3.txt 初級者 : 変なことが起こったら R を一旦終了してから再起動中級者 :R の再起動はやらず オブジェクトの全消去で対応 21
データの型 ファイル名 :rcode_translate2.txt?translate または help(translate) でも translate 関数が受け付けるものの中に AAStringSet が含まれないと予想 入力として与える fasta オブジェクトやオプションのことを引数 (Arguments) といいます 22
データの型 translate 関数が入力として受け付けるものは DNAStringSet や RNAStringSet などであり AAStringSet という記述がないことが分かります Usage と Arguments の記述でだいたい分かります また これらの記述を眺め codons 関数の存在に気づくことを通じて 幅を広げていきます 23
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 24
in_f で指定した入力ファイルを readdnastringset 関数を用いて読み込んだ後の fasta オブジェクトは translate 関数が入力として受け付ける DNAStringSet 形式であることが分かる 25
入力ファイルの description 行の記述が names という場所 配列長が width という場所に格納されていることもわかる 26
入力ファイルの description 行の記述が names という関数 配列長が width という関数で取り出せることが分かる ただし seq 関数は 存在はするがイメージと異なり塩基配列は返さない 27
translate 関数実行後の hoge オブジェクトは AAStringSet 形式に変わっていることがわかる 28
少なくとも R ver. 2.15.2 までは必要だったが 講義資料作成時の R 環境 (R ver. 3.1.0 と Bioconductor ver. 2.14) では この作業はもはや必要ない 29
NGS 速習コース終了後に関連個所をこのように修正するか バージョンの違いの影響を説明する資料として残すかは考え中 30
講義資料作成時の R 環境 (R ver. 3.1.0 と Bioconductor ver. 2.14) では この作業はもはや必要ないと 2014/08/13 に気づいたが 一連の手順作成当時はこうする必要があったのです 自分の R 環境を把握しバージョンの違いに気をつけるべし! 31
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 32
sessioninfo() で自分の R 環境を把握 門田の解析環境は R ver. 3.1.0 であることがわかる また Biostrings パッケージのバージョンは 2.32.0 と読み取る 33
投稿論文へのバージョン情報記載例 R ver. 3.1.0 の場合は ここを ver. 3.1.0 に変更すればよい 34
投稿論文へのバージョン情報記載例 R and Bioconductor や R/Bioconductor など 2 大リポジトリの一つである Bioconductor がセットで記述される場合が多いのは TCC や Biostrings パッケージを含むバイオインフォ系パッケージの多くが Bioconductor から配布されているから 35
定期的なバージョンアップをお勧め R 本体も Bioconductor も定期的にバージョンアップがなされている R (http://www.r-project.org/) 2014-07-10 に ver. 3.1.1 をリリース 2014-04-10 に ver. 3.1.0 をリリース 2014-03-06 に ver. 3.0.3 をリリース 2012-03-30 に ver. 2.15.0 をリリース http://cran.md.tsukuba.ac.jp/bin/windows/base/old/ Bioconductor (http://bioconductor.org/) は半年ごとにリリース 2014 年 8 月 14 日現在の R 本体の最新バージョンは 3.1.1 Biostrings 最新バージョンは 2.32.1 しかし R ver. 2.15.0 など本体のバージョンが古いと 2014 年 8 月 14 日に Biostrings パッケージを個別にインストールしても ver. 2.26.3 と昔のバージョンがインストールされる点に注意が必要です 2014-04 に ver. 2.14 をリリース (R ver. 3.1.0 で動作確認 ) 提供パッケージ数 :824 2013-10 に ver. 2.13 をリリース (R ver. 3.0 で動作確認 ) 提供パッケージ数 :750 2013-04 に ver. 2.12 をリリース (R ver. 3.0 で動作確認 ) 提供パッケージ数 :672 2012-10 に ver. 2.11 をリリース (R ver. 2.15.1 で動作確認 ) 提供パッケージ数 :608 2012-04 に ver. 2.10 をリリース (R ver. 2.15.0 で動作確認 ) 提供パッケージ数 :553 2011-11 に ver. 2.9 をリリース (R ver. 2.14.0 で動作確認 ) 提供パッケージ数 :517 2011-04 に ver. 2.8 をリリース (R ver. 2.13.0 で動作確認 ) 提供パッケージ数 :466 36
R の昔のバージョンのインストール手順 Windows 版の ver. 2.15.0 の場合 37
R ver. 2.15.0 上で Biostrings パッケージのみを通常手順でインストール Bioconductor ver. 2.11 でリリースされたバージョンの Biostrings がインストールされていることが分かる 38
R ver. 2.15.0 上で Biostrings パッケージのみを通常手順でインストール 無事インストールできたようなので library 関数を用いて Biostrings パッケージを読み込んでいるところ 警告メッセージは あなたの環境は R ver. 2.15.0 だけど インストールした Biostrings パッケージは R ver. 2.15.2 環境下で作られたものです と言っています library(biostrings) でパッケージのロードに失敗する場合には本気で対処する必要がありますが 警告メッセージが出ているだけですので 私は特に気にしていません 39
2014 年 8 月 14 日現在の R 本体の最新バージョンは 3.1.1 Biostrings 最新バージョンは 2.32.1 しかし R ver. 2.15.0 など本体のバージョンが古いと 2014 年 8 月 14 日に Biostrings パッケージを個別にインストールしても ver. 2.26.3 と昔のバージョンがインストールされる点に注意が必要です 40
定期的なバージョンアップをお勧め R 本体も Bioconductor も定期的にバージョンアップがなされている R (http://www.r-project.org/) 2014-07-10 に ver. 3.1.1 をリリース 2014-04-10 に ver. 3.1.0 をリリース 2014-03-06 に ver. 3.0.3 をリリース 2012-03-30 に ver. 2.15.0 をリリース http://cran.md.tsukuba.ac.jp/bin/windows/base/old/ Bioconductor (http://bioconductor.org/) は半年ごとにリリース 基本的にはバグの修正や新たな機能がどんどん追加されているので最新版の利用をお勧め 毎年 5 月初めと 11 月初めごろに Bioconductor を覗きにいくとよいだろう 2014-04 に ver. 2.14 をリリース (R ver. 3.1.0 で動作確認 ) 提供パッケージ数 :824 2013-10 に ver. 2.13 をリリース (R ver. 3.0 で動作確認 ) 提供パッケージ数 :750 2013-04 に ver. 2.12 をリリース (R ver. 3.0 で動作確認 ) 提供パッケージ数 :672 2012-10 に ver. 2.11 をリリース (R ver. 2.15.1 で動作確認 ) 提供パッケージ数 :608 2012-04 に ver. 2.10 をリリース (R ver. 2.15.0 で動作確認 ) 提供パッケージ数 :553 2011-11 に ver. 2.9 をリリース (R ver. 2.14.0 で動作確認 ) 提供パッケージ数 :517 2011-04 に ver. 2.8 をリリース (R ver. 2.13.0 で動作確認 ) 提供パッケージ数 :466 41
バージョンアップの意義 : 具体例 2013 年 7 月の論文 publish 以降も継続的にアップデートしています : 多群間比較や paired data への対応など 解析可能な実験デザインを拡張 DESeq2 対応もほぼ完了 サンプル間クラスタリング用関数やマイクロアレイデータ用組織特異的発現パターン検出法 ROKU の実装 ドキュメントが充実 (TCC ver. 1.4.0 で 74 ページに!) 42
43
NEWS のところは バージョンアップで主に何が変わったかが簡潔に記述されている 例えば TCC ver. 1.1.3 でシミュレーションデータ作成用の generatesimulationdata 関数を simulatereadcount という名前に変更していることがわかる 44
TCC ver. 1.4.0 で利用可能な関数名を一覧する場合は Reference Manual の PDF をクリック 45
これが関数一覧 46
TCC に限らず ( 開発者側の論理で ) 現在は非推奨の関数が残っている場合がある 大抵 赤の下線部分のように消去予定だという通告か こっちを使え的なアドバイスが書かれています いつのリリースで消すかは開発者次第 47
Reference Manual 中の記述と? 関数名 で得られる記述は同じです オブジェクトの消去は rm 関数を利用 48
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 49
バージョン違いの影響 過去から現在 :Biostrings パッケージ (R で ) 塩基配列解析中のコードは比較的新しい R 環境を想定しています つまり定期的なアップデートを行っているという前提 50
バージョン違いの影響 過去から現在 :Biostrings パッケージ 2010 年 10 月リリースの R ver. 2.12.0 で実行すると readdnastringset 関数のところでエラーが出ます 51
バージョン違いの影響 過去から現在 :Biostrings パッケージ 理由は R ver. 2.12.0 の頃は readdnastringset という関数名ではなく read.dnastringset だったからです 52
バージョン違いの影響 過去から現在 :Biostrings パッケージ search() で表示されるパッケージリストには 確かに Biostrings が存在する?readDNAStringSet で No documentation となる一方で?read.DNAStringSet ではマニュアルがちゃんと開く 53
バージョン違いの影響 過去から現在 :Biostrings パッケージ 2010 年 10 月リリースの R ver. 2.12.0 の頃は Biostrings ver. 2.18.4 です 54
バージョン違いの影響 過去から現在 :Biostrings パッケージ 2012 年 3 月リリースの R ver. 2.15.0 で実行するとエラーは出ません この当時は readdnastringset でも read.dnastringset でもどちらでも受け入れてくれていた 55
バージョン違いの影響 過去から現在 :Biostrings パッケージ 2012 年 3 月リリースの R ver. 2.15.0 で実行するとエラーは出ません この当時は readdnastringset でも read.dnastringset でもどちらでも受け入れてくれていた そのため 下記の使えなくなるぞという警告を気にもしていなかった 56
バージョン違いの影響 過去から現在 :Biostrings パッケージ 2012 年 3 月リリースの R ver. 2.15.0 で実行するとエラーは出ません この当時は readdnastringset でも read.dnastringset でもどちらでも受け入れてくれていた そのため 下記の使えなくなるぞという警告を気にもしていなかった この頃は?readDNAStringSet でも?read.DNAStringSet でもマニュアルがちゃんと開いていた 57
ファイル名 :rcode_translate3.txt ファイル名 :rcode_20140909.txt これらのテンプレートコードのコピペでスライド作成を行っています 58
バージョン違いの影響 過去から現在 :Biostrings パッケージ 2014 年 4 月リリースの R ver. 3.1.0 では 完全に readdnastringset しか受け入れなくなっている 59
バージョン違いの影響 過去から現在 :Biostrings パッケージ 2014 年 4 月リリースの R ver. 3.1.0 では 完全に readdnastringset しか受け入れなくなっている 60
バージョン違いの影響 過去から現在 :Biostrings パッケージ 2014 年 4 月リリースの R ver. 3.1.0 では 完全に readdnastringset しか受け入れなくなっている 61
バージョン違いの影響 過去から現在 :Biostrings パッケージ R ver. 2.12.0 (2010 年 10 月リリース ) Bioconductor ver. 2.7; Biostrings ver. 2.18.4):read.DNAStringSet 関数のみ R ver. 2.15.0 (2012 年 3 月リリース ) Bioconductor ver. 2.11; Biostrings ver. 2.26.3): 移行期 R ver. 3.1.0 (2014 年 4 月リリース ) Bioconductor ver. 2.14; Biostrings ver. 2.32.0):readDNAStringSet 関数のみ これは過去の出来事ですが 現在進行形の事例もあります 62
バージョン違いの影響 現在から未来 : BSgenome.Hsapiens.UCSC.hg19 パッケージ R ver. 3.0.3 (2014 年 3 月リリース ) Bioconductor ver. 2.13: パッケージ内に上流配列情報が格納?! されている R ver. 3.1.0 (2014 年 4 月リリース ) Bioconductor ver. 2.14: 移行期 (Transcript DB 形式のオブジェクト利用を推奨 ) R ver. 3.X.Y (2014 年 10 月リリース?!) Bioconductor ver. 2.15: R ver. 3.1.0 で移行期に入っている事例を紹介 63
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 64
NGS データ解析と R ヒトやマウスなどの代表的な生物種については ゲノム配列情報を含む生物種ごとの R パッケージが存在する ( ゲノム配列や ) 上流配列を multi-fasta 形式ファイルとして保存可能 将来使えなくなるという警告が R ver. 3.1.0 で出ている例を紹介します 65
NGS データ解析と R R ver. 3.1.0 (Bioconductor ver. 2.14) で利用可能な生物種のパッケージ名をリストアップ 70 個あることが分かる R のバージョンが古いとおそらくパッケージ数は少なくなる 66
NGS データ解析と R 2013 年 12 月にリリースされたヒトゲノム最新リリース (GRCh38) の R パッケージも利用可能です 67
NGS データ解析と R 実際にインストール済みのものは ( この PC 環境では )7 パッケージであることがわかる 植物のシロイヌナズナ (Arabidopsis thaliana) のパッケージは推奨手順通りにインストール作業をしたヒトは存在するはず 68
NGS データ解析と R 理由 : このパッケージはデフォルトではインストールされないが R のインストールと起動 のところで明示的に個別にインストールをしていたからです 69
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 70
バージョン違いの影響 ヒトゲノム (BSgenome.Hsapiens.UCSC.hg19) の上流 1000bp (upstream1000) の配列を取得し hoge5.fasta というファイル名で保存するコードを R ver. 3.0.3 と R ver. 3.1.0 で実行し 挙動の違いを眺めます 71
バージョン違いの影響 R ver. 3.0.3 での実行例 72
バージョン違いの影響 getwd() でみられる作業ディレクトリ上に out_f で指定した出力ファイル (hoge5.fasta) が作成されているはずです width 列の数値が全て 1000 になっていることから 上流 1,000bp を切り出せていることが推察できます 73
バージョン違いの影響 慣れてくると 実物 (hoge5.fasta) を眺めて安心するよりも fasta オブジェクトを眺めるほうが全体像をつかみやすいと思います 出力ファイルの行あたりの塩基数が 50 になっているのは width オプションを 50 にしているから 74
バージョン違いの影響 R ver. 3.0.3 では 特に何の問題もなく上流配列を取得できます 理由は param2 で指定した upstream1000 情報がこのパッケージのバージョン (ver. 1.3.19) 中に存在するからです 75
バージョン違いの影響 sessioninfo() で R 環境情報を取得 76
バージョン違いの影響 R ver. 3.1.0 での実行例 R ver. 3.0.3 のときと違って 警告メッセージが出ていることが分かります BioC 2.14 は 2014 年 4 月リリースの Bioconductor ver. 2.14 のこと 77
バージョン違いの影響 警告メッセージは出るものの 上流配列自体は取得できるようです (R ver. 3.1.0) 1 年後には使えなくなるかも 78
バージョン違いの影響 警告メッセージを要約すると upstream の情報は使うな TranscriptDb オブジェクトを使え 79
バージョン違いの影響 ファイル名 :rcode_20140909.txt こんな感じで上流配列を取得できますという赤枠のテンプレートコードは基本的にコピペでうまくいきます 80
(R で ) 塩基配列解析の記述法 上流配列の塩基数を任意に設定できて便利 81
バージョン違いの影響 sessioninfo() で R 環境情報を取得 82
バージョン違いの影響 現在から未来 : Bsgenome.Hsapiens.UCSC.hg19 パッケージ R ver. 3.0.3 (2014 年 3 月リリース ) Bioconductor ver. 2.13: パッケージ内に上流配列情報が格納?! されている R ver. 3.1.0 (2014 年 4 月リリース ) Bioconductor ver. 2.14: 移行期 (Transcript DB 形式のオブジェクト利用を推奨 ) R ver. 3.X.Y (2014 年 10 月リリース?!) Bioconductor ver. 2.15: R ver. 3.1.0 では 2009 年 2 月リリースのヒトゲノム (hg19) パッケージでは警告は出るものの upstream1000 で取得できる しかし 2013 年 12 月リリースのヒトゲノム (GRCh38) パッケージではすでに取得できなくなっているなど混沌としています 83
R ver. 3.1.0 では 2009 年 2 月リリースのヒトゲノム (hg19) パッケージでは警告は出るものの upstream1000 で取得できる しかし 2013 年 12 月リリースのヒトゲノム (GRCh38) パッケージではすでに取得できなくなっているなど混沌としています の実例 84
Contents 3-4. R Bioconductor I 2014/09/09 10:30-14:45 中級 実習 Tips:setwd 関数を利用した効率的な作業ディレクトリの変更 データの型 1:translate 関数の入力情報 (AAStringSet) Tips: オブジェクトの消去 データの型 2: 翻訳配列取得のコードの中身を解説 バージョン情報把握とバージョンアップ バージョン違いの影響 過去から現在 :BiostringsパッケージのreadDNAStringSet 関数 現在から未来 :BSgenome.Hsapiens.UCSC.hg19パッケージでプロモーター配列取得 Bioconductor 概観 85
TxDb というパッケージは R 内での統一規格でアノテーション情報を格納したもの 一般には GTF/GFF 形式のアノテーションファイルが用いられる 86
TxDb というパッケージは R 内での統一規格でアノテーション情報を格納したもの 一般には GTF/GFF 形式のアノテーションファイルが提供されているので それらを読み込んで TxDb オブジェクトに変換するための関数なども用意されている 87
GFF/GTF 形式ファイルの例 GFF3 形式ファイルの例 ( シロイヌナズナ ; TAIR10_GFF3_genes.gff) ): 遺伝子ごとに どの染色体のどの座標上に存在するのかなどの情報を含むタブ区切りテキストファイル GTF 形式ファイルの例 ( ゼブラフィッシュ ; Danio_rerio.Zv9.75.gtf) ): Apr 23 2014 88
任意の染色体のみ 遺伝子名をもつもののみ抽出したい場合は この項目をテンプレートとして利用可能 89
1. (R で ) 塩基配列解析で提供されている様々な項目を眺め 多くの例題をこなし できることの全体像を把握 2. エラー例とその対処法を身につける 基本戦略は? 関数名 や検索エンジンなどを駆使 やりたいことの多くは基本テクニックの組合せで可能 3. Bioconductor のパッケージリストを眺め 知識やテクニックの幅を広げる 90
Bioconductor 概観 2 NGS に特化した内容ではないが R Tips は門田が独学で R を勉強し始めた 2005 年頃から今でも時々お世話になっているウェブサイト PubMed 上で R Bioconductor でキーワード検索し原著論文があるパッケージのみ探すのも一つの戦略ですが 原著論文公開前のパッケージも見つかります 1 3 91
Bioconductor 概観 まずは 数分待ちます このようなフリーズ局面にときどき遭遇しますが 四隅のどこかをいじるなどしてウィンドウサイズを変えると復旧します スクリプトの停止 ボタンを押す必要はありません この後の作業をやると体感できますが リストアップするパッケージ数に比例して表示に時間がかかるようです 最初にすごく時間がかかるのは 824 パッケージ全てをリストアップしているためです 92
Bioconductor 概観 RNA-seq など フリーワード検索をやってもいいとは思いますが 経験上あまりうまく引っかかってこないので私はやりません 基本的には左側のカテゴリ分けのところを眺めますが Biostrings など何を行うパッケージかがある程度分かっているものから逆引きして感覚をつかんでおくとよいでしょう 93
Bioconductor 概観 biostrings と打つとすぐにリストアップされる 94
Bioconductor 概観 Bioconductor の Biostrings パッケージのページに飛びます 95
Bioconductor 概観 Bioconductor の Biostrings パッケージのページで ちょっと下のほうに移動 biocviews のところで見えるキーワードっぽいのがさきほどのカテゴリ分けに相当 例えば DataRepresentation をクリックすると 96
Bioconductor 概観 カテゴリ分けの階層関係がわかる Gene Ontology の階層分類と似たもの DataRepresentation のカテゴリに含まれるのは 26 パッケージであることが分かる 赤枠部分がそのリスト Biostrings は大分類は Software 中分類は Infrastructure となっており その下の階層の DataRepresentation に含まれていることがわかる 97
Bioconductor 概観 大分類の Software 中分類の Infrastructure も存在する 98
Bioconductor 概観 DataRepresentation (26 パッケージ ) のときに比べ Infrastructure (170 パッケージ ) の階層表示には時間がかかることがわかる 99
Bioconductor 概観 Biostrings は塩基配列の切り出しや文字列検索系関数も提供しているので SequenceMatching があるのも妥当 100
Bioconductor 概観 SequenceMatching に含まれる 17 パッケージの一部しか表示されていないが (R で ) 塩基配列解析中にはない CRISPR 関連のパッケージなども存在することに気づく また GenomeAnnotation や GenomicVariation など様々なパッケージがあることに気づく 101
Bioconductor 概観 biocviews には 中分類に相当する BiologicalQuestion という記述はなかった 自分のパッケージがどこに分類分けされるかを指定する biocviews は キーワード指定のようなものであり パッケージ開発者次第なのだろうと妄想する 102