12章シェルスクリプト作成、パイプラインの記述、タスクの並列化

 本書も終わりに近づいてきた。実は、この章にたどり着くまで私は残念な事実を明かさないままに来てしまった。というのも、日々のバイオインフォマティクス作業には、しばしば大量の面倒な作業が必要なのだ。バイオインフォマティシャンたちは、定常的に一連のコマンドを、たった1つのファイルではなく、何十もの(場合によっては何百もの)ファイルに対して適用しなければならない。したがって、バイオインフォマティクスの大部分の作業は、さまざまな処理ステップをパイプラインとしてまとめ、このパイプラインを多数のファイルに繰り返し適用することにあてられる。これはエキサイティングな科学的作業ではないが、よりエキサイティングな解析に取り組む前に必要なハードルなのだ。

 パイプラインを書くことはバイオインフォマティシャンにとっては負担だが、パイプラインはロバストで再現性があるように書かれることが大切だ。このパイプラインは、データ処理中に発生する可能性のある問題に対してロバストでなければならない。シェルで直接、データに対して一連のコマンドを実行するときには、通常は何かがうまくいかないときにはすぐにわかる。たとえば中身があるはずの出力ファイルが空だったり、プログラムがエラーで終了したりした場合だ。しかし、処理パイプラインを通じてデータを流す場合には、大量のファイル処理を自動化するのと引き換えに、個々のステップに細かい注意を払えなくなってしまう。この場合の問題点は、エラーがまだ残っている可能性があるだけではなく、大量のデータファイルに多数のステップを適用して処理を自動化しようとしているため、エラーが起きる可能性がますます増大してしまうことだ。こうした理由から、ロバストなパイプラインを構築することが重要になる。 ...

Get バイオインフォマティクスデータスキル ―オープンソースツールを使ったロバストで再現性のある研究 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.