先日からsamtoolsを使い始めて、わからない点が2つあったので教えて下さい。 1、リファレンスゲノム用のindexが作成できない samtools faidx ref.fastaとやると [fai_build_core] different line length in sequence '(null)'. Segmentation fault となってしまい作成できない。 2、samtools viewのオプションの使い方がわからない。 mappingされたものとmappingされてないものを Samtools view -f p -F P で抽出できるようですが、pやPの意味がわからない。また他にもよく使うオプションがあったら教えて下さい。 ずっとwetな研究をしてきたので、わかりやすく教えて頂けると幸いです。 質問日 May 31 '11 at 19:45 pan |
予想するに、"ref.fasta"に">"で始まる配列名が無いのではないかと思います。 簡単なfastaファイルと、fastaでないファイルを入力として試しましたが、以下のメッセージが出ました。 これの3と同じ(言語は違うようですが)メッセージが出ているので、配列名が無いのではないのでしょうか。 あまり分かりやすく無いかもしれませんが、こちらも参考に下さい。NGS Surfer's WikiのFASTAの説明ページ 例1正しいfastaファイル。
例2 fastaとしては正しいが、samtoolsのfaidxが許容しない書式。
例3 fastaではないファイル。
回答日 May 31 '11 at 20:58 nob_fj ♦ 1は、ref.fastaの各行の長さが違ったりしてませんか?(配列の最後の行以外で)
(May 31 '11 at 20:20)
t_a_b_e
いろいろ試して例3であることがわかりました。配列名も配列の長さも問題なかったのですが、根本的に間違っていました。テキスト上に配列名書いて、配列コピペして、拡張子を.fastaにしてと外見上fastaファイルにしてたのですが、中身が違うんですね……今まで問題無かったのが不思議です。ありがとうございました。
(Jun 01 '11 at 11:45)
pan
1
2の質問の参考情報です。私自身は、あんまりSAMtoolsでフィルタリングしていない(スマートじゃなくawkを使っている)ので、精通していませんが、-fと-Fは共通の"FLAG"を使っているようですね。 下のメッセージの"Options:"の"-f"と"-F"の記述、および、最後の節の6番の記述が答えになるでしょうか。 解釈が正しいか自身は無いですが、 "-f p"が"required flag"に"p=0x1 (paired), "を指定、 "-F P"が"filtering flag"に"P=0x2 (properly paired), "を指定 という意味になるでしょうか。 この指定が、"mappingされたものとmappingされてないものを"抽出することになるのかは、私は分かりません。 実際に、小さいデータで細かい動作を確認すると良いのではないでしょうか。
(Jun 01 '11 at 12:42)
nob_fj ♦
|
"mappingされたものとmappingされてないものを Samtools view -f p -F P で抽出できる"の情報源もあれば、より親切な質問かもしれません。
かうぱーと(http://miyahn.blog80.fc2.com/)のサイトにはBAMからunmapped readを抽出方法が書いてあります。これが出来るなら逆の事も出来るだろうと思い調べ、あるPDF(http://bioinf.eva.mpg.de/ngsa_2010/data/samtools_talk.pdf)に行き着いたのですが、結局pやPの意味がわからなくて質問させて頂きました。