tophat2 使い方 エラーと対策
バイオインフォ道場、くまぞうです。
tophat2でマッピングしていたらエラー終了しました。一応解決したので報告します。
目次
Tophat2 マッピングで発生したエラー
tophat2のマッピングをバックグラウンドで実行したところエラー終了してしまいました。エラーメッセージは、以下のように表示されました。tophat2のoutputフォルダー内にalign_summary.txt
も生成されていませんでした。
IndexError: string index out of range
エラーの原因
エラーの原因は、Trimmomaticでトリミングした後のファイルに異常があってtophat2が正常に動作できないことでした。現象として確認できたことは以下の2点です。
- トリミング後のfastq.gzファイルの一番最後の行が不完全(
+
だけの行と品質行がない) - トリミング後のfastq.gzファイルが小さく、更にzcatでの確認するもgz形式異常で開けない。
幾つかのfastq.gzファイルを同じスクリプトでバッチ処理したのに、正常終了しているファイルもあったので、Trimmomaticの結果がフォーマット不正になった原因までは追求しませんでした。「バックグラウンド実行中の負荷が影響した」と判断しました。
Tophat2 エラーの解決策
Trimmomaticのトリミング作業(バッチ処理)を再度実行して、正常にトリミングが終了することを確認しました。その後のtophat2を使ったマッピング作業も正常に完了し、IndexError
は発生しませんでした。
今回は、エラーが発生したtophat2に原因はなく、その前に原因があったという事例でした。NGSではツールやその出力ファイルも多くなりがちです。エラーメッセージのチェックや原因調査は大事ですね。