遺伝子リスト内の遺伝子の同定

遺伝子リスト内の遺伝子の同定

遺伝子リストファイルがあります。このような

    SWT21
    SSA1
    NRP1
    EFB1
    TFC3
    MDM10

リスト内の遺伝子の名前と、そのその他の基本情報を含む別のファイルがあります。 2番目のファイルは次のとおりです。

chrI    147593  151166  YAL001C -   TFC3
chrI    143706  147531  YAL002W +   VPS8
chrI    142173  143160  YAL003W +   EFB1
chrI    140759  141407  YAL004W +   YAL004W
chrI    139502  141431  YAL005C -   SSA1
chrI    137697  138345  YAL007C -   ERP2
chrI    136913  137510  YAL008W +   FUN14
chrI    135853  136633  YAL009W +   SPO7
chrI    134183  135665  YAL010C -   MDM10

最初のファイルの遺伝子名と同じ遺伝子名を持つ2番目のファイルの行を抽出したいと思います。

ベストアンサー1

必要なのは簡単ですgrep

grep -Fwf gene_list.txt gene_info.txt

使用されるオプションは次のとおりです。

  • -w : 単語全体を検索します。これは、遺伝子名がERK1遺伝子と一致しないことを保証しますERK12-w標準オプションではありませんが、かなり一般的です)。
  • -f:ファイルから検索するパターンを読み込みます。この場合はgene_list.txt
  • -F: パターンを正規表現ではなく文字列として扱います。これにより、このような遺伝子名TOR*(存在する場合)が一致しなくなりますTORRRRRR

注:これは次のように想定されます。スペースなしリスト内の遺伝子名を囲みます。ある場合は、まず削除する必要があります(ここではGNUを使用sed)。

sed -i 's/ //g' gene_list.txt

おすすめ記事