12章
タンパク質からmRNAを推定:リストの積と圧縮
Rosalind mRNAチャレンジ(https://oreil.ly/ZYelo)で説明されているように、このプログラムの目的は、与えられたタンパク質の配列を作り出すことができるmRNAの文字列の数を見つけることです。この数は非常に大きくなる可能性があり、最終的な答えは、ある値で割った後の余りになることがわかると思います。今回は、特定のパターンにマッチするすべての文字列を生成することで、正規表現の常識を覆すことができることを示したいと思います。また、数値やリストの積を作成する方法や、任意の値のリストを単一の値に圧縮する方法も紹介し、その過程で問題となるメモリの取り扱いについても触れます。
この章では、以下のことを学びます。
functools.reduce()
関数を使って、数値を乗算するための関数を作る方法- Pythonの剰余演算子(
%
)の使い方 - バッファオーバーフロー問題について
- モノイドとは何か
- 辞書の値からキーを逆引きする方法
12.1 はじめましょう
レポジトリの12_mrna
ディレクトリで作業してください。まず、solution1_dict.py
をmrna.py
にコピーします。
$ cd 12_mrna/$ cp solution1_dict.py mrna.py
いつも通り、使用方法について見ていきます。
$ ./mrna.py -husage: mrna.py [-h] [-m int] proteinInferring mRNA from Proteinpositional arguments: protein Input protein or file ❶optional arguments: ...
Get Pythonではじめるバイオインフォマティクス ―可読性・拡張性・再現性のあるコードを書くために now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.