POINT 01
データベース準備の自動化
Ensemblのリリース番号と生物種を指定するだけで、転写産物配列のダウンロードからBLAST用データベースの作成までを実行します。使用したリリースが設定に残るため、検索条件を再現できます。
対象遺伝子の配列が、ほかの転写産物とどの程度共通しているかを網羅的に調べるシステムを開発しました。データベースの準備、配列の取得、BLASTによる検索、遺伝子ごとの可視化までを、一連の処理として自動化しています。
Challenge_
発現している遺伝子の配列について、ほかの転写産物と共通する部分を洗い出す必要がありました。対象は数多くの遺伝子にわたるため、手作業での検索では現実的ではありませんでした。
Architecture_
対象遺伝子の配列を一定の長さの区間に分割し、各区間をBLASTで転写産物データベースと照合します。区間ごとのヒット数を集計し、全体の分布と遺伝子ごとのグラフとして出力します。
Key Points_
データベースのバージョンや検索条件を設定ファイルで管理し、同じ条件で再検索できる構成にしました。
POINT 01
Ensemblのリリース番号と生物種を指定するだけで、転写産物配列のダウンロードからBLAST用データベースの作成までを実行します。使用したリリースが設定に残るため、検索条件を再現できます。
POINT 02
対象遺伝子の配列を、1塩基ずつずらした短い区間に分割して検索します。どの位置に類似配列の多い領域があるかを、配列全体にわたって把握できます。区間の長さは設定で変更可能です。
POINT 03
REST APIでの配列取得はバッチ単位で行い、取得済みの配列はキャッシュして再取得を避けます。BLASTもバッチ単位・マルチスレッドで実行し、スーパーコンピューターのジョブとして投入できるスクリプトを用意しました。
POINT 04
全体の分布をヒストグラムで示すほか、遺伝子ごとに位置別のヒット数と累積割合をグラフ化します。しきい値を超える遺伝子のグラフだけを別フォルダへ抜き出す機能も備えています。
Tech Stack_
検索・可視化・抽出をそれぞれ単独でも実行できるよう、処理ごとにコマンドを分けています。
| 区分 | 技術 | 用途 |
|---|---|---|
| 配列データ | Ensembl/pyensembl/REST API | 転写産物配列の取得とバージョン管理 |
| 検索エンジン | NCBI BLAST+(blastn) | データベースの作成、塩基配列の類似性検索 |
| データ処理 | Python/pandas | 区間の作成、検索結果の集計・ランキング |
| 可視化 | Matplotlib | ヒストグラム、遺伝子ごとのグラフの出力 |
| 実行環境 | ジョブスケジューラ | スーパーコンピューターへの検索・可視化ジョブの投入 |
Outcome_
Contact_
扱うデータや研究目的に応じて、必要なモデルとシステムをご提案します。検討中のテーマや実装したい機能からご相談ください。
研究開発について相談する