Giter VIP home page Giter VIP logo

blast-shell's Introduction

概要

  • blastをローカル環境で実行するためのシェル
    • blastの実行結果が出力される
    • blastでヒットしたsubject idの塩基配列が出力される

バージョン

  • 2021/01/31 v1.0.0
  • 2021/05/16 v1.1.0
  • 2021/06/23 v1.2.0 クエリを実行するDBを複数選択することができるようにする
  • 2022/09/24 v1.3.0 blastxに対応

実行環境

  • bash
  • blast がインストールされていること

使用方法

手順

  1. bash setup.shを実行する
  2. db,output,queryディレクトリが作成される
  3. cd dbでディレクトリに移動する
  4. mkdir <DBを保存するディレクトリ名> でディレクトリを作成する
  5. 作成したディレクトリの中に、DB用fastaファイルを保存する
  6. cd <DBを保存するディレクトリ名>
  7. 核酸の場合→makeblastdb -in <保存したfastaファイル>.fasta -out <DBを保存するディレクトリ> -dbtype nucl -parse_seqidsを実行する
  8. タンパク質の場合→makeblastdb -in <保存したfastaファイル>.faa -out <DBを保存するディレクトリ> -dbtype prot -parse_seqidsを実行する
  9. cd ../../を行う
  10. bash exec.shを実行する

実行後のディレクトリ構成例

.
├── README.md
├── db
│   └── xxx
│       ├── xxx.fasta
│       ├── xxx.nhr
│       ├── xxx.nin
│       ├── xxx.nog
│       ├── xxx.nsd
│       ├── xxx.nsi
│       └── xxx.nsq
├── error.log
├── exec.sh // blastを実行するshell
├── output
│   ├── result
│   │   ├── 2021-06-24_00:34_output1.txt
│   │   ├── 2021-06-24_00:34_output2.txt
│   │   ├── 2021-06-24_00:34_output3.txt
│   │   └── 2021-06-24_00:34_output4.txt
│   └── sequence
│       └── 2021-06-24_00:34_sequence1.fasta // outputの一番若い番号になる
│       
├── query
│   └── query.txt
├── setup.sh // ディレクトリを作るshell
└── test.sh // test用のshell

シェルについて

仕様

  • dbは複数選択することができる
  • blastに失敗した場合、error.logに追記されていく

出力フォーマット

  • 結果 -> YYYY-MM-DD_HH:SS_output〇〇.txt
  • 配列 -> YYYY-MM-DD_HH:SS_sequence〇〇.fasta

注意点

  • 日時は実行するPCのタイムゾーンに依存する。確認方法: cat /etc/sysconfig/clock
  • ./db配下に「db名.fasta」ファイルを配置する必要がある

ex) ./db/hoge/hogehoge.fasta ← DB作成に使ったfastaファイルを配置

困っている点

  • blastオプション「-culling_limit」の仕様がドキュメントを読んでもよくわからない

直したい点

  • logファイルを時間を出力するようにしたい

参考

blast-shell's People

Contributors

westhousek avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.