概要

  • ClustalWは、アライメントや系統樹を作製するためのツール。
    • サイトにもあるように、実際にClustalを使うときは最新のClustal Omegaを使うことが望ましい。
  • Google Colab上で、ClustalWを例として、解析ツールのインストールと実行をする。
  • LinuxやMacでインストールしたい際にも利用する汎用的な方法を説明する。


やりたい事

  • ClustalWのインストール
  • ClustalWの実行


Google ColabでClustalW


こんな感じになればインストール成功


次に、各コマンドについて一言。

これらのコマンドは、Google Colab以外の環境(LinuxやMac)で解析ツールをダウンロードする際にも使うので、知っている必要がある(何回もやってると覚える)。


%%bash
  • %%bashは、マジックコマンドという。
    • これだけは、Google Colab (Jupyter Notebook)でのみ、利用可能なコマンド。
    • %はラインマジック、%%はセルマジックという。
    • %%bashを先頭につけたセルは、Bashが書けるようになる。


# 「src」というディレクトリを作成し、移動する
mkdir -p /content/src && cd $_
  • mkdir -p <path>
  • &&
    • <command1> && <command2>でcommand1が成功したらcommand2を実行する、という意味になる。
  • cd $_
    • 直前に指定したpath(正確には直前に実行したコマンドの最後の引数)を勝手に指定してくれる。
    • ここでは、/content/srcと同じ意味がある。


# ClustalWのダウンロード
wget -q http://www.clustal.org/download/2.1/clustalw-2.1-linux-x86_64-libcppstatic.tar.gz

# Clustal Omegaのダウンロード (実行しなくて良い)
# wget -q http://www.clustal.org/omega/clustal-omega-1.2.4.tar.gz
  • wget <URL>は、URL先のファイルをダウンロードするコマンド。
    • -q(quiet)を付けないと色々出力が出てくる。付けなくても良い。
  • 以下のリンク先から手持ちの端末に合わせたリンクを貼ってダウンロードする。


# tarファイルの解凍
tar -xvzf clustalw-2.1-linux-x86_64-libcppstatic.tar.gz
  • tar -xvzfは、.tar.gzファイルを解凍するコマンド。
    • ファイルが解凍されると新しいディレクトリができる。


# シンボリックリンクの作成
ln -s /content/src/clustalw-2.1-linux-x86_64-libcppstatic/clustalw2 /usr/local/bin/
  • ln -sは、シンボリックリンクを貼るときに用いるコマンド。
    • /usr/local/bin/clustalw2というコマンドへのショートカットを置いているイメージ。
    • これを実行することで、どこのディレクトリからもclustalw2というコマンドだけで実行できるようになる。
    • これをやらない場合、毎回/content/src/clustalw-2.1-linux-x86_64-libcppstatic/clustalw2(絶対パス)もしくは、相対パスで指定する必要がある。


# インストールが成功しているかを確認
clustalw2 -HELP

# Clustal Omega (実行しなくて良い)
# clustalo --help
  • 大体のツールは、<command> --help、もしくは、その省略形の<command> -hで実行できる場合が多い。



ClustalWの実行

まずは、最初にGoogle Driveに接続しておく。


こんな感じになれば実行成功


  • input.txtを用意して、Google Driveのこのnotebookが保存されている位置と同じディレクトリ(pwdで確認できる)に保存する。
  • 中身は以下のような構造のファイル(fasta形式)。
>Human
ACAGCTTCATCACATCACAT
>Dog
ACGTACTACTGCATACGTACC
>Cat
CTATAAAACGACACCAGA


このnotebook(clustalw.ipynb)とinput.txtが同じディレクトリに存在することを確認する。

ll
total 16
-rw------- 1 root 15803 Oct 19 02:56 clustalw.ipynb
-rw------- 1 root    79 Oct 13 08:26 input.txt
  • llls -F -o --colorというコマンドが登録されている(aliasコマンドで確認)。
  • lsコマンドは現在いるディレクトリ内以下に存在するファイルやディレクトリを表示する。
    • -F
      • 各ファイルやディレクトリの状態がわかる(e.g. <directory>/)。
    • -o
      • lsとは異なり、ファイルを縦方向に表示する。
    • --color
      • ファイルの種類によって色分け表示される。


!clustalw2 input.txt -outfile=output.txt
  • これを実行すると、output.txtinput.dndという2つのファイルが出てくる。
  • llコマンドで出力されたか確認。


!head output.txt
  • head
    • ファイルの先頭10行を表示するコマンド。