Chapter 2.2 Genbankへのアクセス方法とNCBIデータベースの利用法
当記事は・・・ 参考書「バイオインフォマティクス Pythonによる実践レシピ」を勉強中の初心者まじめちゃんが、書籍の感想を述べたり、書籍中のコードで出てきたエラーを修正していくブログ記事です。 めざせ脱バイオインフォ初心者!
Entrez、すごく便利です
NCBIのデータベースにアクセスするツールである「Entrez」はかなり便利でおすすめです。
このチャプターでEntrezを知って以来、しょっちゅうこのツールを使ってます(笑)
例えば、遺伝子配列をちょこっと見たい時や、ある遺伝子を持ってる生物を調べたいときなどなど・・・
著作権侵害になると怖いのでエラー箇所の訂正のみ載せますが、Entrez使いたいかたは是非「バイオインフォマティクス Pythonによる実践レシピ」をご購入いただき一緒に勉強しましょう!
ちなみに、こちらのページでは参考書と関係なく、Entrezで特定の遺伝子を持つ生物名をリストアップする方法を書いてます。ご参考まで↓
SeqIOはなに?
特に説明なく突然使われ始めたSeqIOですが、どうやら配列ファイルなどを読み書きするためのツールのようです。
SeqIO | データベースからダウンロードしたファイルを処理する BioPython モジュール (biopapyrus.jp)
SeqIO.parse は配列情報をイテレータ形式でメモリに格納するらしいです。
よくわからん(笑)
イテレータは順番・繰り返し処理する動作の抽象化で、概念を指すみたいです。
イテレーターは要素をひとつずつ取り出して渡してくれるので、for文みたいなものでしょうか・・・?
今回の修正箇所
この節ではマラリア原虫のCRT遺伝子をEntrezでとってくるところからスタートします。
2)でエラーがでました。
Entrezで得られた一見数字に見えるCountは、数字ではなく文字列で入ってるみたいです。
なので、以下の修正(int の括弧付け)が必要です。
if int(rec_list[‘RetMax’]) <int(rec_list[‘Count’]):
今回はこれだけでした。
基本的には自分でいじらないとわからない
本書を読んでいて、rec.descriptionやら、rec.nameやら色々出てきて、「どうやってこんなたくさんの種類の要素を覚えているの??」とはじめは疑問に思いましたが、何回か自分で使ってみて多分だれも要素を暗記しているのではないということがわかってきました。
分からなかったら、とりあえず print!です。
print(rec) や print(XXX)でターミナルが一時的にぐちゃっとなろうと中身を見てしまえばOKです