本手順ではgapmer型のアンチセンス核酸を例に、これが相補結合する可能性のあるRNAを検索する手順を示します (あくまでデータベースの利用例を示す為であり、何らかの保証をするものではありません)。ヒトにおけるオンターゲット、マウスにおけるターゲットの有無、そしてヒトにおけるオフターゲットを順に検索していきます。
本手順では、Usage Note 01と比べて、オンターゲット遺伝子が異なり、アンチセンス核酸配列長が14merではなく、16merになっている点で異なりますが、検索はほぼ同等の手順で実施できることにも注目してください。
代替手順:
RNAの配列検索において、大きく二つのアプローチが考えられます。一つは、対象となるRNA配列を準備しそれを検索するもので、直感的で理解しやすいアプローチです。しかしながら、数多くのRNAアイソフォームを対象とした検索を実施しようとすると、場合によってはゲノムの何倍もあるデータセットを構築しなければなりません (一つの遺伝子領域から、異なるエクソン組み合わせをもつRNAがたくさん転写されることもあるのです)。数多くのRNAを検索しようとすると、準備する配列データは大きくなり検索時間もかかります。もう一つのアプローチは、ゲノム配列を検索した後、RNAの座標情報(遺伝子モデル、とも呼んでいます)を使って処理をすることです。この方法では、どんなにたくさんのRNAを対象としても、配列検索を行うデータはゲノム配列よりも大きくなることはありません。
上記手順の1. ~ 3. は一つ目のアプローチ、つまりRNA配列の検索です。代替手順である4., 5. については二つ目、つまりゲノム配列の検索とその後の処理を行うアプローチに対応します。2.と4.、3.と5.はほぼ同じ結果になるはずのものですので、実際の検索ではどちらかのみで良いでしょう。ただしD3Gでは現在、アイソフォームが比較的少ないRefSeqについてはRNA配列を準備し提供していますが、他のデータセットについては、原則としてRNAの位置情報のみを提供しています。従って、D3Gのすべてのデータを使った検索を実施するのであれば、代替手順が必要になるでしょう。
ただしゲノム配列を検索するアプローチでは、一点だけ注意が必要です。RNAのエクソンはゲノム配列を鋳型として転写されたものですので、ゲノム配列の検索によってすべてのエクソンを検索できますが、エクソン・ジャンクション(エクソン同士の接合部位)配列は検索できません。こちらをも検索対象にするのであれば、やはり大きなデータセットを準備するかそれに特化した検索を補完的に実施することが必要になるでしょう。
ターミナルを開いて、検索に係る各種パラメータを設定します。ここではデータベースとして、RefSeqに含まれるヒトのタンパク質コード遺伝子(ミトコンドリアゲノムにコードされているものを含む)を用います。EZN–4176はLNA gapmerアンチセンス型であることから、mRNA前駆体を検索対象としています。
DB=hg38_refSeqCuratedProtCoding_prespliced_d3g1906 # GGGenomeにおける、D3G human unspliced protein-coding RNAのデータベース名
QUERY=ACCAAGTTTCTTCAGC # EZN-4176の配列。mRNAに対するアンチセンスとなっていることを銘記
STRAND=- # 検索対象とするストランド。mRNAアンチセンス鎖との一致を検索するために「-」を指定。
DISTANCE=0 # 配列検索の条件として用いる編集距離。完全一致を検索するため、「0」と指定。
TARGET=AR # ターゲット遺伝子のsymbol
OUTPUT_PREFIX=EZN-4176-AR # 出力ファイル名のプレフィックス
指定パラメータを元にGGGenomeを用いた検索を行い、結果をファイルに保存します。 (検索時の条件・状況によって検索にかかる時間は異なります)
wget -O - https://gggenome.dbcls.jp/${DB}/${DISTANCE}/${STRAND}/${QUERY}.txt \
> ${OUTPUT_PREFIX}.txt
検索結果が含まれるファイルの内容を表示します。
less ${OUTPUT_PREFIX}.txt
以下のような内容がターミナルに表示されます。
# [ GGGenome | 2019-07-01 12:34:56 ]
# database: Human pre-spliced RNA, RefSeq curated protein coding on hg38, D3G 19.06 (Jun, 2019)
# query: GCTGAAGAAACTTGGT
# count: 4
# name strand start end snippet snippet_pos snippet_end query sbjct align edit match mis del ins
NM_000044.4|AR|chrX:67544622:67730619:+|prespliced - 166787 166802 TTTCTTAGCTAGGGCAGTTTTTCTAAAAAGGTAGTTGCATTGTGTGTTTTTGACCACTGATGATAAATTCAAGTCTCTCTTCCTTCCCAATAGCCCGGAAGCTGAAGAAACTTGGTAATCTGAAACTACAGGAGGAAGGAGAGGCTTCCAGCACCACCAGCCCCACTGAGGAGACAACCCAGAAGCTGACAGTGTCACACATTGAAGGCTATGAAT 166687 166902 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGT |||||||||||||||| ================ 16 0 0 0
NM_001011645.3|AR|chrX:67544622:67730619:+|prespliced - 166787 166802 TTTCTTAGCTAGGGCAGTTTTTCTAAAAAGGTAGTTGCATTGTGTGTTTTTGACCACTGATGATAAATTCAAGTCTCTCTTCCTTCCCAATAGCCCGGAAGCTGAAGAAACTTGGTAATCTGAAACTACAGGAGGAAGGAGAGGCTTCCAGCACCACCAGCCCCACTGAGGAGACAACCCAGAAGCTGACAGTGTCACACATTGAAGGCTATGAAT 166687 166902 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGT |||||||||||||||| ================ 16 0 0 0
NM_017696.2|MCM9|chr6:118813448:118931738:-|prespliced - 19264 19279 TTATATGTTTTGATCACCTACTGTTTTGCAAGGCACTCTGCCAAATGTTGAGCTTAAATAGGGGTTTCCTATTAATGTATTTAGGAAACACTTGAGAATTGCTGAAGAAACTTGGTCAGTGAAATCATATGTACCATAGGATATGCACGTTATTTATGTTACATTTGCAAAATGAGTACTTATTTTAAGATACATATTTCACTAAGTTACTAAAAT 19164 19379 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGT |||||||||||||||| ================ 16 0 0 0
NM_153255.4|MCM9|chr6:118910596:118935162:-|prespliced - 22688 22703 TTATATGTTTTGATCACCTACTGTTTTGCAAGGCACTCTGCCAAATGTTGAGCTTAAATAGGGGTTTCCTATTAATGTATTTAGGAAACACTTGAGAATTGCTGAAGAAACTTGGTCAGTGAAATCATATGTACCATAGGATATGCACGTTATTTATGTTACATTTGCAAAATGAGTACTTATTTTAAGATACATATTTCACTAAGTTACTAAAAT 22588 22803 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGT |||||||||||||||| ================ 16 0 0 0
複数のエントリがヒット(検索条件に合致)していることがわかります。
これを一行ずつ確認しても構いませんが、ここでは標的遺伝子が含まれるかどうかを知りたいだけですので、
次のステップでは標的遺伝子の名前が含まれる行を抽出します。
取得した検索結果より、標的遺伝子名が含まれる行を抜き出し、その結果をファイルに保存します。
grep ${TARGET} ${OUTPUT_PREFIX}.txt \
> ${OUTPUT_PREFIX}_target.txt
結果が含まれるファイルの内容を表示します。
less ${OUTPUT_PREFIX}_target.txt
以下のような内容がターミナルに表示されます。
NM_000044.4|AR|chrX:67544622:67730619:+|prespliced - 166787 166802 TTTCTTAGCTAGGGCAGTTTTTCTAAAAAGGTAGTTGCATTGTGTGTTTTTGACCACTGATGATAAATTCAAGTCTCTCTTCCTTCCCAATAGCCCGGAAGCTGAAGAAACTTGGTAATCTGAAACTACAGGAGGAAGGAGAGGCTTCCAGCACCACCAGCCCCACTGAGGAGACAACCCAGAAGCTGACAGTGTCACACATTGAAGGCTATGAAT 166687 166902 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGT |||||||||||||||| ================ 16 0 0 0
NM_001011645.3|AR|chrX:67544622:67730619:+|prespliced - 166787 166802 TTTCTTAGCTAGGGCAGTTTTTCTAAAAAGGTAGTTGCATTGTGTGTTTTTGACCACTGATGATAAATTCAAGTCTCTCTTCCTTCCCAATAGCCCGGAAGCTGAAGAAACTTGGTAATCTGAAACTACAGGAGGAAGGAGAGGCTTCCAGCACCACCAGCCCCACTGAGGAGACAACCCAGAAGCTGACAGTGTCACACATTGAAGGCTATGAAT 166687 166902 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGT |||||||||||||||| ================ 16 0 0 0
結果の中に、標的遺伝子に対応するエントリが含まれていることが確認できました。
これによって、検索配列は標的遺伝子のARのmRNA前駆体の一部と完全に一致することが確認できました。
また、2件の検索結果があることから、検索配列と一致するようなARのバリアントが検索対象であるデータベース(RefSeq)に登録されていることが分かりました。
ターミナルを開いて、検索に係る各種パラメータを設定します。
DB=mm10_refSeqCuratedProtCoding_prespliced_d3g1906 # GGGenomeにおける、D3G mouse unspliced protein-coding RNAのデータベース名
QUERY=ACCAAGTTTCTTCAGC # EZN-4176の配列。mRNAに対するアンチセンスとなっていることを銘記。
STRAND=- # 検索対象とするストランド。mRNAアンチセンス鎖との一致を検索するために「-」を指定。
DISTANCE=2 # 配列検索の条件として用いる編集距離。ヒト・マウス間で差がある可能性を考慮し、「2」と指定。
TARGET=AR # 確認対象とする標的遺伝子名 (ヒトのオーソログであっても、マウスでは異なる名称で呼ばれている可能性もあることに注意が必要。そのようなケースかどうかを確認した上で、必要に応じてマウスの遺伝子名に修正)。
OUTPUT_PREFIX=EZN-4176-mouse # 出力ファイル名のプレフィックス。
指定パラメータを元にGGGenomeを用いた検索を行い、結果をファイルに保存します。(検索時の条件・状況によって検索に要する時間は異なります)
wget -O - https://gggenome.dbcls.jp/${DB}/${DISTANCE}/${STRAND}/${QUERY}.txt \
> ${OUTPUT_PREFIX}.txt
検索結果が含まれるファイルの内容を表示します。
less ${OUTPUT_PREFIX}.txt
その結果、以下のような内容がターミナルに表示されます。
# [ GGGenome | 2019-07-01 12:34:56 ]
# database: Mouse pre-spliced RNA, RefSeq curated protein coding on mm10, D3G 19.06 (Jun, 2019)
# query: GCTGAAGAAACTTGGT
# count: 2185
# name strand start end snippet snippet_pos snippet_end query sbjct align edit match mis del ins
NM_001001144.3|Scap|chr9:110333355:110384949:+|prespliced - 22611 22625 TCAAATAGCCTGAGTGCTGAGCCTTGTAAGTGGGCTTTGGTAAATTCTCTCCTGTCTGGTTCCTAAGTGTAGTAACTGTTAACTCCATCCACTGGGAAAAGCTGATGAAACTTGTAGCAAATAGACATTGTAGCAAAAGTTGTATTTATATTTCCTAGCGGTTAGGCTACTAGGACCCAAGAGGGTGGCTCAGCTCAGAGGCAGACTTTGCCTTA 22511 22725 GCTGAAGAAACTTGGT GCTGATGAAACTT-GT ||||| ||||||| || =====X=======I== 14 1 0 1
NM_001001178.1|Ccdc148|chr2:58821696:59160627:-|prespliced - 303856 303870 ATGGAACAAACTCTTTCACCTGTGGGGACATCTTTCAGCCCTAAGTTTTAACTCTTCATGTGGCAATTCAGACAAATATAGTGGACCATAGAAGCTTTAAGTGAAGAAACTTGGGGAGAAATGGGATGTTTATATAGAGCCAACCATGACTCCATAGAATAAAACAAAAAAGGGGCCTTTACAGTGGAGAAATAGGACCATAGGTGCCTTGGCCA 303756 303970 GCTGAAGAAACTTGGT G-TGAAGAAACTTGGG | ||||||||||||| =I=============X 14 1 0 1
NM_001001180.2|Zfp941|chr7:140809676:140822178:-|prespliced - 540 556 GGGAAGGATTCCTATTGGCTGGCTTGTGTGGTTTCCATCAGCAGCTGGGCAAGAAAGATCCTGGAGCCAGATGCTGCTTTCTGCCATTTTGTTCTACATAGCTGATGAAAACTTGGTTAATGCGCAGTCGGCCAAATTTTCCACTATATTGATAACTGCTTTTTTCTTTATCTTGTGGAATTAACATTTTTATTGTTATTTTAGGTATACGCATGCA 440 656 GCTGAAG-AAACTTGGT GCTGATGAAAACTTGGT ||||| | ||||||||| =====X=D========= 15 1 1 0
NM_001001182.3|Baz2b|chr2:59899362:60125740:-|prespliced - 54698 54713 GCCTTGAAAGCAACTGCCTAGAAACACGTTTCCCTAGGAGCAGCAGACCAAGCCAAGCTCAGCAGTAGTCCGAGGGCTTGGGAGGCAGCCTGCATCTTGAGCTGAAGGAACTTGGCAACATTGTCCAGGTGGGACTGATTTTTAAGGCATAGCACATCATTTTCAAAACTGATGTGTTATGATTGATGAGGGGTGGAATTGTGAGGGCTGTCACTT 54598 54813 GCTGAAGAAACTTGGT GCTGAAGGAACTTGGC ||||||| ||||||| =======X=======X 14 2 0 0
NM_001001326.1|St5|chr7:109523910:109617147:-|prespliced - 46999 47013 GCTCACAGACTTCCATAGCAGAGGTTTTGCCACTTGCCACAGAAACCCTGTGGTCATGGTGGGACTCTCTGGGAGATATTTGAAGTGCTTCTGGCTGGCTGTGAGGAAACTTGGTTTACAGGCGTGTCTTCTTTTCAGGGCTCTGGGTTTGCAGAGAGCCGAAATGACCATGACTGCCAACAAGAACTCCAGCATCACTCATGGAACCGGAGGCA 46899 47113 GCTGAAGAAACTTGGT G-TGAGGAAACTTGGT | ||| |||||||||| =I===X========== 14 1 0 1
...以下省略...
取得した検索結果より、標的遺伝子名が含まれる行を抜き出し、その結果をファイルに保存します。
grep -i \|${TARGET}\| ${OUTPUT_PREFIX}.txt \
> ${OUTPUT_PREFIX}_target.txt
抜き出された結果を表示します。
cat ${OUTPUT_PREFIX}_target.txt
その結果、以下のような内容がターミナルに表示されます。
NM_013476.4|Ar|chrX:98148756:98323218:+|prespliced - 156488 156503 TATTTTAGCTCAGTCACTTTTCTTAACAGGGTAAGTATTATGTGTATTTTTGGCCACTGATAATAAATTCAAGTTTCTTTTACTTCTCAATAGCTCGTAAGCTGAAGAAACTTGGAAATCTAAAACTACAGGAGGAAGGAGAAAACTCCAATGCTGGCAGCCCCACTGAGGACCCATCCCAGAAGATGACTGTATCACACATTGAAGGCTATGAAT 156388 156603 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGA ||||||||||||||| ===============X 15 1 0 0
mouseのAR前駆体mRNA配列には、上記の結果から1塩基違いで一致する領域があることがわかりました。
ターミナルを開いて、検索に係る各種パラメータを設定します。ここでは、手順1–1.と同様に、データベースとしてRefSeqに含まれるヒトのタンパク質コード遺伝子(ミトコンドリアゲノムにコードされているものを含む)を用います。
DB=hg38_refSeqCuratedProtCoding_prespliced_d3g1906 # GGGenomeにおける、D3G human unspliced protein-coding RNAのデータベース名
QUERY=ACCAAGTTTCTTCAGC # EZN-4176の配列。mRNAに対するアンチセンスとなっていることを銘記。
STRAND=- # 検索対象とするストランド。mRNAアンチセンス鎖との一致を検索するために「-」を指定。
DISTANCE=2 # 配列検索の条件として用いる編集距離。オフターゲットの影響も考えるため、ここでは「2」と指定。
OUTPUT_PREFIX=EZN-4176-prespliced # 出力ファイル名のプレフィックス
指定パラメータを元にGGGenomeを用いた検索を行い、結果をファイルに保存します。(検索時の条件・状況によって検索に要する時間は異なります)
wget -O - https://gggenome.dbcls.jp/${DB}/${DISTANCE}/${STRAND}/${QUERY}.txt \
> ${OUTPUT_PREFIX}.txt
検索結果が含まれるファイルの内容を表示します。
less ${OUTPUT_PREFIX}.txt
次のような内容がターミナルに表示されます。
# [ GGGenome | 2019-07-01 12:34:56 ]
# database: Human pre-spliced RNA, RefSeq curated protein coding on hg38, D3G 19.06 (Jun, 2019)
# query: GCTGAAGAAACTTGGT
# count: 6176
# name strand start end snippet snippet_pos snippet_end query sbjct align edit match mis del ins
NM_000015.2|NAT2|chr8:18391244:18401213:+|prespliced - 1165 1179 GCTGAGGAGCAAGGAAGCCAGTCCGAGTCCCAAAACCTCAAAAGTAGGGAAGCCGACAGTGCAGCCTTCAGTCTGTGGTCAAAGGTCCAGGAGTCCAAAGGCTGAAGAACTTGGAGTTTGATGTTTGAGGGCAGGAAGCATCCAGCACAGGAGAAAGATGTAGGCTGGGAGACTAAGCCAGTCTAGTCTTTCCACATTCTTCTGCCTACTTTCAT 1065 1279 GCTGAAGAAACTTGGT GCTGAAG-AACTTGGA ||||||| ||||||| =======I=======X 14 1 0 1
NM_000044.4|AR|chrX:67544622:67730619:+|prespliced - 101808 101824 GGTGAGGGTGAGGCTGGGCAGGGAGGGTCTGCATAGAAAAAAGGGTGCGGTGAGAAAAAATAATGCTACTAAGCCATGAGGGTAAAATGACCAAATTCTGGTTGAGAGAAACTTGGTCAAAGTGTGTATGGGGAGAGAAAGTTGGTCAAAGTCTGTGTCTGAGTGCTTGGTGGGATGAACTCTGGGTTAGAAACAGGCATGGAGGGAAATAGTTGGT 101708 101924 GCTGA-AGAAACTTGGT GTTGAGAGAAACTTGGT | ||| ||||||||||| =X===D=========== 15 1 1 0
NM_000044.4|AR|chrX:67544622:67730619:+|prespliced - 166787 166802 TTTCTTAGCTAGGGCAGTTTTTCTAAAAAGGTAGTTGCATTGTGTGTTTTTGACCACTGATGATAAATTCAAGTCTCTCTTCCTTCCCAATAGCCCGGAAGCTGAAGAAACTTGGTAATCTGAAACTACAGGAGGAAGGAGAGGCTTCCAGCACCACCAGCCCCACTGAGGAGACAACCCAGAAGCTGACAGTGTCACACATTGAAGGCTATGAAT 166687 166902 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGT |||||||||||||||| ================ 16 0 0 0
NM_000045.3|ARG1|chr6:131573203:131584332:+|prespliced - 7497 7512 AAAATGTCTGGAGCTTGAAGTATTTGGGATGAACTTTGTTCCTGGTTGAGTGGGTAACTAGATGCATTGAATAGAATGAGTGAACACACGCCATACGCTGGCTGAAGAACTTGAGTAAGAACATGTAAGAACTTCTGAGTGATGCTCTCAAATTATAAAAGCTGGATTTTAAGAAAAATTGAAAGACTTTGTCATAATTCACTTGAGAGAATTAAG 7397 7612 GCTGAAGAAACTTG-GT GCTGAAG-AACTTGAGT ||||||| |||||| || =======I======D== 15 0 1 1
NM_000053.3|ATP7B|chr13:51932668:52011494:-|prespliced - 50382 50396 CAATGAAATCAATGGCTCTGGCAGATTCTGGAAGGTCTAGGAAAACTCCAAGCAGGGGACATAAGATCTGAGCCTCAAAGAATGAGTGGAAGTTTGCTTGGCTGAAGGAATTGGTGGCGGCTACCCTTGGGGACTGCTGTGGCTTGGTTCAGTAGGCATGCCTGGGGCACAGGAGGAGCTTACGGGAGAGGCATCTGAACAGCCAGTTGGGGGTC 50282 50496 GCTGAAGAAACTTGGT GCTGAAGGAA-TTGGT ||||||| || ||||| =======X==I===== 14 1 0 1
...以下省略...
一致配列が多数存在することがわかります。ただ、同一遺伝子であっても異なるバリアントに存在する一致配列、あるいは同一バリアントであっても異なる領域に存在しうる一致配列もすべて異なる行として現れていることに注意が必要です。
取得した検索結果を遺伝子名で並び替えつつ、遺伝子毎に区切ってファイルに保存します。
tail -n +6 ${OUTPUT_PREFIX}.txt \
| cut -f 1-4,6- \
| sort -k 2,2 -t '|' \
| awk 'BEGIN{FS="|"}{if (prev!=$2){print "\n>>>"$2} prev=$2;print}' \
> ${OUTPUT_PREFIX}_per_gene.txt
遺伝子単位にまとめた結果ファイルの内容を表示します。
less ${OUTPUT_PREFIX}_per_gene.txt
次のような内容がターミナルに表示されます。
>>>AADAT
NM_001286682.1|AADAT|chr4:170060221:170090221:-|prespliced - 13987 14001 13887 14101 GCTGAAGAAACTTGGT G-TGAAGAAACTGGGT | |||||||||| ||| =I==========X=== 14 1 0 1
NM_001286683.1|AADAT|chr4:170060221:170090387:-|prespliced - 14153 14167 14053 14267 GCTGAAGAAACTTGGT G-TGAAGAAACTGGGT | |||||||||| ||| =I==========X=== 14 1 0 1
NM_016228.3|AADAT|chr4:170060221:170090032:-|prespliced - 13798 13812 13698 13912 GCTGAAGAAACTTGGT G-TGAAGAAACTGGGT | |||||||||| ||| =I==========X=== 14 1 0 1
NM_182662.1|AADAT|chr4:170060221:170090221:-|prespliced - 13987 14001 13887 14101 GCTGAAGAAACTTGGT G-TGAAGAAACTGGGT | |||||||||| ||| =I==========X=== 14 1 0 1
>>>AAR2
NM_001271874.1|AAR2|chr20:36236416:36256941:+|prespliced - 20195 20211 20095 20311 GCTGAAGAA-ACTTGGT GCTGAAGAAGACCTGGT ||||||||| || |||| =========D==X==== 15 1 1 0
NM_015511.4|AAR2|chr20:36236416:36256941:+|prespliced - 20195 20211 20095 20311 GCTGAAGAA-ACTTGGT GCTGAAGAAGACCTGGT ||||||||| || |||| =========D==X==== 15 1 1 0
>>>AATF
NM_012138.3|AATF|chr17:36948874:37056871:+|prespliced - 40594 40607 40494 40707 GCTGAAGAAACTTGGT GCTGAA-AAACTT-GT |||||| |||||| || ======I======I== 14 0 0 2
NM_012138.3|AATF|chr17_KI270857v1_alt:1185239:1293236:+|prespliced - 40593 40606 40493 40706 GCTGAAGAAACTTGGT GCTGAA-AAACTT-GT |||||| |||||| || ======I======I== 14 0 0 2
>>>ABCA13
NM_152701.4|ABCA13|chr7:48171459:48647495:+|prespliced - 119048 119063 118948 119163 GCTGAAGAAACTTGGT GCTGAAGAAACTTGGA ||||||||||||||| ===============X 15 1 0 0
>>>ABCB5
NM_001163941.1|ABCB5|chr7:20615621:20757014:+|prespliced - 71907 71921 71807 72021 GCTGAAGAAACTTGGT GCTGAA-AAACCTGGT |||||| |||| |||| ======I====X==== 14 1 0 1
NM_178559.5|ABCB5|chr7:20647342:20757014:+|prespliced - 40186 40200 40086 40300 GCTGAAGAAACTTGGT GCTGAA-AAACCTGGT |||||| |||| |||| ======I====X==== 14 1 0 1
...以下省略...
検索結果が遺伝子単位にまとまっていることがわかります。
参考までに、いくつの遺伝子にヒットしているのか調べます。まずは、遺伝子名だけの行を抽出します。
grep '>>>' ${OUTPUT_PREFIX}_per_gene.txt | sort > ${OUTPUT_PREFIX}_per_gene.genes.txt
その後、行を数えます。
cat ${OUTPUT_PREFIX}_per_gene.genes.txt | wc -l
結果が次のように表示されます。
1535
1,500個以上の遺伝子にヒットしていることがわかりました。
ターミナルを開いて、検索に係る各種パラメータを設定します。検索対象として、リファレンス・ヒトゲノムを用います。検索により得られた配列一致が、遺伝子領域に存在するかどうかを判断するため、遺伝子のゲノム座標データについても準備します。
wget http://d3g.riken.jp/release/latest/hg38/ncbiRefSeqCuratedProteinCoding.bed12.gz # 遺伝子のゲノム座標データの準備
GENE_COORDINATES=ncbiRefSeqCuratedProteinCoding.bed12.gz # 遺伝子のゲノム座標データファイル名
DB=hg38 # GGGenomeにおける、ヒトhg38ゲノムのデータベース名
QUERY=ACCAAGTTTCTTCAGC # EZN-4137の配列。mRNAに対するアンチセンスとなっていることを銘記。
STRAND= # 検索対象とするストランド。ゲノム上には両鎖に遺伝子が存在し得ることから、片鎖に限定せず両鎖を検索する。
DISTANCE=0 # 配列検索の条件として用いる編集距離。完全一致を検索するため、「0」と指定。
TARGET=AR # ターゲット遺伝子のsymbol
OUTPUT_PREFIX=EZN-4137-AR # 出力ファイル名のプレフィックス
指定パラメータを元にGGGenomeを用いた検索を行い、結果をファイルに保存します。 (検索時の条件・状況によって検索にかかる時間は異なります)
wget -O - https://gggenome.dbcls.jp/${DB}/${DISTANCE}/${STRAND}/${QUERY}.bed \
> ${OUTPUT_PREFIX}.bed
検索結果が含まれるファイルの内容を表示します。
less ${OUTPUT_PREFIX}.bed
以下のような内容がターミナルに表示されます。
track name=GGGenome description="GGGenome matches"
chr6 118912459 118912475 . 0 +
chr11 118269249 118269265 . 0 +
chr20 40450180 40450196 . 0 +
chrX 38253730 38253746 . 0 +
chr1 174153975 174153991 . 0 -
chrX 67711408 67711424 . 0 -
ゲノム上に、複数の配列一致が見つかったことがわかります。
配列一致の見つかったゲノム位置が、遺伝子と重複する領域に存在するかを調べ、結果をファイルに保存します。
bedtools intersect -a ${OUTPUT_PREFIX}.bed -b ${GENE_COORDINATES} -wa -wb -S \
> ${OUTPUT_PREFIX}_gene.bed
結果が含まれるファイルの内容を表示します。
less ${OUTPUT_PREFIX}_gene.bed
次のような内容がターミナルに表示されます。
chr6 118912459 118912475 . 0 + chr6 118910596 118935162 NM_153255.4|MCM9 0 - 118911623 118931723 0,0,0 7 1173,126,201,82,317,319,272, 0,2698,6964,11408,13214,20823,24294,
chr6 118912459 118912475 . 0 + chr6 118813448 118931738 NM_017696.2|MCM9 0 - 118814823 118931723 0,0,0 12 2846,146,83,204,203,175,120,126,201,82,317,319, 0,12698,13333,14478,15599,42922,98201,99846,104112,108556,110362,117971,
chrX 67711408 67711424 . 0 - chrX 67544622 67730619 NM_000044.4|AR 0 + 67545146 67723841 0,0,0 8 2140,152,117,288,145,131,158,6934, 0,98633,141387,166779,172855,177210,178204,179063,
chrX 67711408 67711424 . 0 - chrX 67544622 67730619 NM_001011645.3|AR 0 + 67569002 67723841 0,0,0 9 2140,187,152,117,288,145,131,158,6934, 0,24213,98633,141387,166779,172855,177210,178204,179063,
重複を調べた結果から、表的配列遺伝子名を含む行を抜き出し、その結果をファイルに保存します。
grep ${TARGET} ${OUTPUT_PREFIX}_gene.bed \
> ${OUTPUT_PREFIX}_gene_target.txt
抜き出された結果を表示します。
less ${OUTPUT_PREFIX}_gene_target.txt
その結果、以下のような内容がターミナルに表示されます。
chrX 67711408 67711424 . 0 - chrX 67544622 67730619 NM_000044.4|AR 0 + 67545146 67723841 0,0,0 8 2140,152,117,288,145,131,158,6934, 0,98633,141387,166779,172855,177210,178204,179063,
chrX 67711408 67711424 . 0 - chrX 67544622 67730619 NM_001011645.3|AR 0 + 67569002 67723841 0,0,0 9 2140,187,152,117,288,145,131,158,6934, 0,24213,98633,141387,166779,172855,177210,178204,179063,
ヒトゲノム上で検索配列と一致した領域群に、標的遺伝子のARがコードされている領域が含まれていることが確認できました。
ターミナルを開いて、検索に係る各種パラメータを設定します。手順4–1.と同様に、検索対象としてリファレンス・ヒトゲノムを用います。検索により得られた配列一致が、遺伝子領域に存在するかどうかを判断するため、遺伝子のゲノム座標データについても準備します(手順4–1.で準備したものと同じものですので、そちらの実施後でしたら下のwgetコマンドは必要ありません)。
wget -nc http://d3g.riken.jp/release/latest/hg38/ncbiRefSeqCuratedProteinCoding.bed12.gz # 遺伝子座標データの準備
GENE_COORDINATES=ncbiRefSeqCuratedProteinCoding.bed12.gz # 遺伝子のゲノム座標データファイル名
DB=hg38 # GGGenomeにおける、ヒトhg38ゲノムのデータベース名
QUERY=ACCAAGTTTCTTCAGC # EZN-4176の配列。mRNAに対するアンチセンスとなっていることを銘記。
STRAND= # 検索対象とするストランド。ゲノム上には両鎖に遺伝子が存在し得ることから、片鎖に限定せず両鎖を検索する。
DISTANCE=2 # 配列検索の条件として用いる編集距離。配列検索の条件として用いる編集距離。オフターゲットの影響も考えるため、ここでは「2」と指定。
OUTPUT_PREFIX=EZN-4176-prespliced # 出力ファイル名のプレフィックス
wget -O - https://gggenome.dbcls.jp/${DB}/${DISTANCE}/${STRAND}/${QUERY}.bed \
> ${OUTPUT_PREFIX}.bed
結果ファイルの内容を表示します。
less ${OUTPUT_PREFIX}.bed
その結果、以下のような内容がターミナルに表示されます。
track name=GGGenome description="GGGenome matches"
chr1 1875696 1875711 . 0 +
chr1 3811873 3811888 . 0 +
chr1 3962197 3962213 . 0 +
chr1 4196135 4196151 . 0 +
chr1 4240457 4240472 . 0 +
chr1 4252781 4252796 . 0 +
chr1 4258375 4258391 . 0 +
chr1 4643396 4643411 . 0 +
chr1 4817498 4817513 . 0 +
chr1 4878677 4878692 . 0 +
... 以下省略 ...
bedtoolsを用いてゲノム上の検索結果と、遺伝子領域とが重複する領域だけを抜き出します。
bedtools intersect -a ${OUTPUT_PREFIX}.bed -b ${GENE_COORDINATES} -wa -wb -S -f 0.85 \
> ${OUTPUT_PREFIX}_gene_intersect.txt
アンチセンス配列をクエリとしているため-Sオプションを指定しています。また、デフォルトの場合だと一塩基でも重複している場合も含めて出力されますので、一致配列の85%以上が重複するもの(つまり、16塩基長のうち14塩基以上が重複)のみを出力するよう「-f 0.85」とオプションを指定しています。
結果が含まれるファイルの内容を表示します。
less ${OUTPUT_PREFIX}_gene_intersect.txt
次のような内容がターミナルに表示されます。
chr1 1875696 1875711 . 0 + chr1 1785284 1891117 NM_002074.4|GNB1 0 - 1787330 1825453 0,0,0 12 1769,116,217,202,67,163,64,107,39,103,49,298, 0,2037,3768,5110,7960,19134,21190,30471,32552,40112,53905,105535,
chr1 1875696 1875711 . 0 + chr1 1785284 1891117 NM_001282538.1|GNB1 0 - 1787330 1804548 0,0,0 10 1769,116,217,202,67,163,64,103,49,298, 0,2037,3768,5110,7960,19134,21190,40112,53905,105535,
chr1 1875696 1875711 . 0 + chr1 1785284 1891117 NM_001282539.1|GNB1 0 - 1787330 1825453 0,0,0 11 1769,116,217,202,67,163,64,107,39,103,298, 0,2037,3768,5110,7960,19134,21190,30471,32552,40112,105535,
chr1 8461457 8461473 . 0 + chr1 8352403 8817640 NM_012102.3|RERE 0 - 8355086 8656297 0,0,0 24 2717,181,147,721,223,1379,114,162,200,93,163,81,99,100,125,49,105,97,106,126,71,469,185,481, 0,3015,3696,5792,7360,7708,9359,10279,11652,12342,13408,70323,113521,142659,145001,156223,188810,204071,205014,262157,271906,303569,440000,464756,
chr1 8461457 8461473 . 0 + chr1 8352403 8817640 NM_001042681.1|RERE 0 - 8355086 8656297 0,0,0 23 2717,181,147,721,223,1379,114,162,200,93,163,81,99,100,125,49,105,97,106,126,71,469,481, 0,3015,3696,5792,7360,7708,9359,10279,11652,12342,13408,70323,113521,142659,145001,156223,188810,204071,205014,262157,271906,303569,464756,
chr1 8563752 8563768 . 0 + chr1 8352403 8817640 NM_012102.3|RERE 0 - 8355086 8656297 0,0,0 24 2717,181,147,721,223,1379,114,162,200,93,163,81,99,100,125,49,105,97,106,126,71,469,185,481, 0,3015,3696,5792,7360,7708,9359,10279,11652,12342,13408,70323,113521,142659,145001,156223,188810,204071,205014,262157,271906,303569,440000,464756,
chr1 8563752 8563768 . 0 + chr1 8352403 8817640 NM_001042681.1|RERE 0 - 8355086 8656297 0,0,0 23 2717,181,147,721,223,1379,114,162,200,93,163,81,99,100,125,49,105,97,106,126,71,469,481, 0,3015,3696,5792,7360,7708,9359,10279,11652,12342,13408,70323,113521,142659,145001,156223,188810,204071,205014,262157,271906,303569,464756,
chr1 21119832 21119848 . 0 + chr1 20806291 21176888 NM_001198802.1|EIF4G3 0 - 20807318 21002742 0,0,0 35 1209,147,82,147,99,82,126,173,116,221,118,94,95,133,105,237,147,198,171,120,134,247,89,840,106,123,98,115,180,21,96,129,76,184,167, 0,4446,6866,11100,18808,21325,22855,34564,43123,44966,47268,48686,51111,54093,55936,58184,58824,73031,79909,87225,89076,93405,98591,135199,143711,163182,166710,174042,174756,176096,196421,244574,282846,369883,370430,
chr1 21119832 21119848 . 0 + chr1 20806291 21176888 NM_001198801.1|EIF4G3 0 - 20807318 21002742 0,0,0 35 1209,147,82,147,99,82,126,173,116,221,118,94,95,133,105,237,147,198,171,111,120,134,247,89,840,106,123,98,115,180,96,129,76,184,167, 0,4446,6866,11100,18808,21325,22855,34564,43123,44966,47268,48686,51111,54093,55936,58184,58824,73031,79909,86327,87225,89076,93405,98591,135199,143711,163182,166710,174042,174756,196421,244574,282846,369883,370430,
chr1 21119832 21119848 . 0 + chr1 20941243 21168039 NM_001198803.2|EIF4G3 0 - 20941375 21002742 0,0,0 13 152,840,109,123,98,115,180,33,96,129,76,61,79, 0,247,8759,28230,31758,39090,39804,56357,61469,109622,147894,170079,226717,
... 以下省略 ...
重複する遺伝子名を行頭に出力した後、これを辞書順に並べます(コマンドの1〜5行目)。
これによって同じ遺伝子に対してゲノム上で重複する一致配列が連続するようになります。
その後、異なる遺伝子が現れる毎に区切りを出力し(コマンドの6行目)、その結果をファイルに保存します。
cat ${OUTPUT_PREFIX}_gene_intersect.txt \
| awk '{print $10"\t"$0}' \
| cut -f 2- -d '|' \
| sort -k1 -k2 -k3 \
| awk '{if (prev!=$1){print "\n>>>"$1} prev=$1;print}' \
> ${OUTPUT_PREFIX}_per_gene_intersect.txt
結果ファイルの内容を表示します。
less ${OUTPUT_PREFIX}_per_gene_intersect.txt
その結果、以下のような内容がターミナルに表示されます。
>>>AADAT
AADAT chr4 170076220 170076235 . 0 + chr4 170060221 170090032 NM_016228.3|AADAT 0 - 170060927 170089690 0,0,0 13 748,102,107,65,62,97,83,66,210,75,133,169,409, 0,1670,4497,6192,7105,8369,8926,10365,12914,18287,26894,28174,29402,
AADAT chr4 170076220 170076235 . 0 + chr4 170060221 170090221 NM_001286682.1|AADAT 0 - 170060927 170089690 0,0,0 14 748,102,107,65,62,97,83,66,210,75,133,169,125,78, 0,1670,4497,6192,7105,8369,8926,10365,12914,18287,26894,28174,29390,29922,
AADAT chr4 170076220 170076235 . 0 + chr4 170060221 170090221 NM_182662.1|AADAT 0 - 170060927 170089690 0,0,0 14 748,102,107,65,62,97,83,66,210,75,133,169,113,78, 0,1670,4497,6192,7105,8369,8926,10365,12914,18287,26894,28174,29402,29922,
AADAT chr4 170076220 170076235 . 0 + chr4 170060221 170090387 NM_001286683.1|AADAT 0 - 170060927 170089690 0,0,0 14 748,102,107,65,62,97,83,66,210,75,133,169,113,163, 0,1670,4497,6192,7105,8369,8926,10365,12914,18287,26894,28174,29402,30003,
>>>AAR2
AAR2 chr20 36256610 36256627 . 0 - chr20 36236416 36256941 NM_001271874.1|AAR2 0 + 36239868 36255745 0,0,0 4 87,805,230,1364, 0,3404,8280,19161,
AAR2 chr20 36256610 36256627 . 0 - chr20 36236416 36256941 NM_015511.4|AAR2 0 + 36239868 36255745 0,0,0 4 366,805,230,1364, 0,3404,8280,19161,
>>>AATF
AATF chr17 36989467 36989481 . 0 - chr17 36948874 37056871 NM_012138.3|AATF 0 + 36949125 37056664 0,0,0 12 342,192,411,138,115,202,165,84,68,81,72,271, 0,1339,4011,4895,37742,39644,40372,41899,70130,72059,82739,107726,
AATF chr17_KI270857v1_alt 1225831 1225845 . 0 - chr17_KI270857v1_alt 1185239 1293236 NM_012138.3|AATF 0 + 1185490 1293029 0,0,0 12 342,192,411,138,115,202,165,84,68,81,72,271, 0,1339,4011,4895,37741,39643,40371,41898,70129,72058,82736,107726,
>>>ABCA13
ABCA13 chr7 48290506 48290522 . 0 - chr7 48171459 48647495 NM_152701.4|ABCA13 0 + 48171483 48645512 0,0,0 62 93,94,124,152,29,164,131,134,165,200,128,101,168,206,140,115,4779,1827,110,119,164,80,122,195,165,178,140,114,91,177,307,115,330,70,132,138,181,219,197,158,231,106,250,90,70,119,88,109,55,178,116,157,254,193,110,151,135,104,93,106,138,2079, 0,21499,26777,47894,49821,55802,58365,62558,67781,69407,73116,74052,74403,76779,77752,97520,100327,106634,109883,116500,124240,125772,126906,138487,141607,142772,145697,163962,166905,179183,180721,196334,200708,202887,204981,216362,217580,220461,232223,239060,240893,256306,283577,295496,300070,309576,311616,317776,334876,336412,339624,345265,348581,352788,356776,408764,415694,423250,443825,471828,473157,473957,
>>>ABCB5
ABCB5 chr7 20687527 20687542 . 0 - chr7 20615621 20757014 NM_001163941.1|ABCB5 0 + 20623285 20755624 0,0,0 28 216,74,55,151,55,192,172,125,178,114,111,126,204,171,162,141,144,105,78,84,204,101,141,157,198,207,147,1588, 0,7643,10935,13066,16437,27562,27839,30134,30339,31913,32346,34400,35798,42884,65883,70074,82785,84203,84436,89102,107394,111418,112693,123361,127255,129610,137738,139805,
ABCB5 chr7 20687527 20687542 . 0 - chr7 20647342 20757014 NM_178559.5|ABCB5 0 + 20651422 20755624 0,0,0 19 306,111,126,204,171,162,141,144,105,78,84,204,101,141,157,198,207,147,1588, 0,625,2679,4077,11163,34162,38353,51064,52482,52715,57381,75673,79697,80972,91640,95534,97889,106017,108084,
... 以下省略...
ゲノムでなく、タンパク質コードRNA前駆体の配列を、直接検索したときと同じ配列が見つかっていることが確認できます (11カラム目)。また、2-4カラム目はクエリ配列がヒットしたゲノム座標を示していますが、AADATに対する4つのエントリはいずれも同じ値を示しています。これは、ゲノム上の同じ箇所に一致したものであること、そしてその領域にはRNA前駆体の構造が複数登録されていることを示しています。
3–3と同様に、いくつの遺伝子にヒットしているのか調べます。まずは、遺伝子名だけの行を抽出します。
grep '>>>' ${OUTPUT_PREFIX}_per_gene_intersect.txt| sort > ${OUTPUT_PREFIX}_per_gene_intersect.genes.txt
その後、行を数えます。
cat ${OUTPUT_PREFIX}_per_gene_intersect.genes.txt | wc -l
結果が次のように表示されます。
1534
1,500個以上の遺伝子にヒットしていることがわかりました。
ただ、3–5では1535個の遺伝子であったにもかかわらず、一つ足りないようです。どこが違うのかを確認してみます。
diff ${OUTPUT_PREFIX}_per_gene.genes.txt ${OUTPUT_PREFIX}_per_gene_intersect.genes.txt
すると次のように結果が表示されます。
125d124
< >>>BAGE5
BAGE5、という遺伝子が手順3–5 (ゲノムでなくmRNA前駆体を対象に検索したもの) のみに見つかっていることがわかりました。
これがどんなヒットであったのか、確認してみます。
grep "BAGE5" ${OUTPUT_PREFIX}_per_gene.txt
次のような結果が出力されます。
>>>BAGE5
NM_182484.2|BAGE5|chr13_KN538372v1_fix:76209:170143:+|prespliced - 29559 29574 29459 29674 GCTGAAGAAACTTGGT ACTGAAGAAATTTGGT ||||||||| ||||| X=========X===== 14 2 0 0
chr13_KN538372v1_fix、という見慣れない染色体の上に定義されていることがわかりました。これを個別に調べてみると、どうやらリファレンス・ゲノム配列の小規模な訂正(パッチ、hg38 patch2 )として、リファレンス・ゲノムの発表後に追加された配列であることがわかりました。一方、GGGenomeを用いて実施したhg38に対する検索は、パッチによる訂正を含まない配列に対するものでした。以上から、二つのアプローチによる検索は基本的に等価であること、ただ遺伝子セットが定義されるタイミングなどによって結果は僅かに異なるケースがあることがわかりました。