How to Use Genomon-exome


Genomon-exomeでは解析を実施するのに主に6つのスクリプトを実行します.

※ FASTQファイルに解凍が必要な場合,時間がかかります.

Putting FASTQ Files in The Target Directory


Genomon-exome の次の工程のマッピング機能を動かすために、FASTQファイルを配置していただく作業になります.
FASTQファイルの保存の方法がユーザさんで異なっているのでこのツールで吸収して統一させます.
2種類のツール(アプローチ)をご用意しておりますが、どちらにも当てはまらない場合は、手動でFASTQファイルを配置してください.

1種類目: CASAVA1.8以降のバージョンで出力されたディレクトリ単位のFASTQファイルの場合のツールの起動方法を説明します.解析するFASTQファイルをexome/data/input_orgに配置しましょう.

		# FASTQファイルの配置
		# input_org内に「サンプル名_RUN日」でファイルを配置しましょう.
		exome/data/input_org/sample01_120405/sample01T  # .fastq.gz が格納されているディレクトリ名を指定してコマンドを実行するので、ディレクトリ名はなんでもよい.# コマンドをたたくと .fastq.gz がマージされ1組のペアエンドのFASTQファイルが生成される.
		exome/data/input_org/sample01_120405/sample01N
		
		# sample01Tのディレクトリの中身はこのようになっています.
		# このようなディレクトリになっているものが『1種類目』の対象になります.
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R1_001.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R1_002.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R1_003.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R1_004.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R1_005.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R1_006.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R1_007.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R2_001.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R2_002.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R2_003.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R2_004.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R2_005.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R2_006.fastq.gz
		-rw-r--r--  1 genomon genomon 1234567890 Aug 10 00:00 sample01T_ACGTAC_L001_R2_007.fastq.gz

用意ができたところでツールをたたいてみましょう.このツールはディレクトリ1つに対して1回実行します.
exome/script ディレクトリ内で実行してください!

			qsub putFastqDir.sh [options] 引数1 引数2 引数3 引数4
			# 引数1:インプットディレクトリ名 (絶対パス)
			# 引数2:サンプル名
			# 引数3:RUN日(シークエンサをRUNした日.同じサンプルを複数回シークエンスすることがあるので入れましょう.)
			# 引数4:サンプルタイプ (normal tumor CR …自由です.)
			# options
			# -f フィルタが必要であれば"-f"を記述します.このoptionに対する引数はいりません.
			# インプットFASTQファイルにcasava1.8がフィルタするべきとしているreadが存在する場合に"-f"を使用してください.
			
			# ディレクトリ1つに対して1回コマンドを実行します.
			qsub putFastqDir.sh -f /home/genomon/exome/data/input_org/sample01_120402/sampleT sample01 120405 tumor
			qsub putFastqDir.sh -f /home/genomon/exome/data/input_org/sample01_120402/sampleN sample01 120405 normal
			
			# 上記コマンドの結果. 出力結果のディレクトリ構造&ファイルフォーマットは『2種類目』と同じになります.
			# ディレクトリ構造&ファイルフォーマット: 
			# data/input/{サンプル名}/{RUN日}/{サンプルタイプ}/{レーン番号}/{サンプル名}_${サンプルタイプ}_R{ペア}.fastq 
			../data/input/sample01/120405/tumor/1/sample01_tumor_R1.fastq
			../data/input/sample01/120405/tumor/1/sample01_tumor_R2.fastq
			../data/input/sample01/120405/normal/2/sample01_normal_R1.fastq
			../data/input/sample01/120405/normal/2/sample01_normal_R2.fastq

2種類目: 上記以外のFASTQファイルを配置するツールの起動方法を説明します.
解析するFASTQファイルをexome/data/input_orgに配置しましょう.

		# FASTQファイルの配置
		# input_org内に「サンプル名_RUN日」でファイルを配置しましょう.
		exome/data/input_org/sample01_120405/s_1_1_sequence.txt
		exome/data/input_org/sample01_120405/s_1_2_sequence.txt
		exome/data/input_org/sample01_120405/s_2_1_sequence.txt
		exome/data/input_org/sample01_120405/s_2_2_sequence.txt

用意ができたところでツールを実行してみましょう.このツールはファイル1つに対して1回実行します.
exome/script ディレクトリ内で実行してください!

			qsub putFastqFile.sh  引数1 引数2 引数3 引数4 引数5 引数6 引数7
			# 引数1:インプットファイル (パス+ファイル名)
			# 引数2:サンプル名
			# 引数3:RUN日(シークエンサをRUNした日.同じサンプルを複数回シークエンスすることがあるので入れましょう.)
			# 引数4:サンプルタイプ (normal tumor CR …自由です.)
			# 引数5:レーン番号 (1~8を指定してください.)
			# 引数6:ペア (1or2を指定してください.)
			#   1 : ペアエンドのRead1のシークエンスプライマから読んだリードのFASTQファイル
			#   2 : ペアエンドのRead2のシークエンスプライマから読んだリードのFASTQファイル
			# options
			# -f フィルタが必要であれば"-f"を記述します.このoptionに対する引数はいりません.
			# インプットFASTQファイルにcasava1.8がフィルタするべきとしているreadが存在する場合に"-f"を使用してください.
			
			# ファイル1つに対して1回コマンドを実行します.
			qsub putFastqFile.sh -f ../data/input_org/sample01_120405/s_1_1_sequence.txt sample01 120405 tumor 1 1
			qsub putFastqFile.sh -f ../data/input_org/sample01_120405/s_1_2_sequence.txt sample01 120405 tumor 1 2
			qsub putFastqFile.sh -f ../data/input_org/sample01_120405/s_2_1_sequence.txt sample01 120405 normal 2 1
			qsub putFastqFile.sh -f ../data/input_org/sample01_120405/s_2_2_sequence.txt sample01 120405 normal 2 2
			
			# 上記コマンドの結果. 出力結果のディレクトリ構造&ファイルフォーマットは『1種類目』と同じになります.
			# ディレクトリ構造&ファイルフォーマット: 
			# data/input/{サンプル名}/{RUN日}/{サンプルタイプ}/{レーン番号}/{サンプル名}_${サンプルタイプ}_R{ペア}.fastq 
			../data/input/sample01/120405/tumor/1/sample01_tumor_R1.fastq
			../data/input/sample01/120405/tumor/1/sample01_tumor_R2.fastq
			../data/input/sample01/120405/normal/2/sample01_normal_R1.fastq
			../data/input/sample01/120405/normal/2/sample01_normal_R2.fastq

以上でFASTQファイルの配置は完成です.

ディレクトリ構成やファイル名はプログラムで読み取るので変更しないでください.

1. Alignment & Generate Summary Table


マッピングを実施します.マッピング率やカバレージの情報を出力します.

exome/scriptディレクトリ内で実行してください!

			qsub map_bwa.sh [ options ] 引数1 引数2 引数3
			# 引数1:サンプル名
			# 引数2:run日(同じサンプルを複数回シークエンスすることがあるので入れましょう.)
			# 引数3:キャプチャーした範囲が記載されているファイル名 (ディレクトリパス、拡張子 (.bed)はいりません.installページの項番11.でアップロードしたファイルです.)
			# options
			# -j {s|m|l デフォルト:m}
			# スーパーコンピュータで使用するジョブを選択できます.s=sjob,m=mjob,l=ljob
			# -s {デフォルト:False  -s を指定することによりTrueになります.}
			# FASTQファイルのQualityスコアがsangerのQualityスコアになっていない場合には,このオプションを指定してsangerのQualityスコアに変換してください.
			# -a {デフォルト:False  -a を指定することによりTrueになります.}
			# FASTQ ファイルからアダプタ配列を除去したいときには,このオプションを指定してください.exon_pipeline.configファイルのアダプタ項目に記載をしてください.
			
			# コマンド
			qsub map_bwa.sh sample01 120405 SureSelect50M -a -s
			# このコマンド結果 BAMファイル
			../data/output/sample01/120405/map_bwa/tumor/ga.bam
			../data/output/sample01/120405/map_bwa/normal/ga.bam
			# このコマンド結果 マッピング率等の計算結果
			../data/output/sample01/120405/summary/tumor/
			../data/output/sample01/120405/summary/normal/
			# マッピング率等の計算結果レーンごと.TYPE (tumor,normalなどの) ディレクトリ以下のレーンディレクトリが1つしかない場合は,TYPEディレクトリ配下にできた結果とレーンディレクトリ配下にできた結果は同じになります.
			../data/output/sample01/120405/summary/tumor/1/
			../data/output/sample01/120405/summary/normal/2/

qsubでジョブを起動したらjobIdが画面に表示されるのでメモしておきましょう.後でログを見るときに必要です.

2. Merge Mapped Bam 必要であれば!実施しましょう.


もし,同じサンプル,同じサンプルタイプ (normal tumorが同じ) で異なるrun日のBAMファイルがある場合はこのタイミングでマージしましょう. 例えばdepthが足りなくて再度シークエンスして,マッピングしたbamファイルを作った時などこのタイミングで過去のbamファイルとマージします. 結果はrun日がmergeディレクトリとして作成されます.

exome/scriptディレクトリ内で実行してください!

			qsub merge_bamfiles.sh [ options ] 引数1 引数2 引数3
			# 引数1:マージするbamファイル (,カンマ区切りで複数指定する.絶対パスで記述)
			# 引数2:サンプル名
			# 引数3:サンプルタイプ (normal tumor など)
			# options
			# -j {s|m|l デフォルト:m}
			# スーパーコンピュータで使用するジョブを選択できます.s=sjob,m=mjob,l=ljob
			# -t {RUN日 デフォルト:merge} 
			# bamファイルを出力するディレクトリの下の赤字の部分 (merge) を指定.通常はデフォルトで問題ありません.
			# exome/data/output/${引数1:サンプル名}/${RUN日}/${bam_directory}/${bam_file_name}
			# -g {Bamファイル出力ディレクトリ デフォルト: map_bwa} 
			# bamファイルを出力するディレクトリの下の赤字の部分 (map_bwa) を指定.通常はデフォルトで問題ありません.
			# exome/data/output/${引数1:サンプル名}/${RUN日}/${bam_directory}/${bam_file_name}
			# -f {Bamファイル デフォルト:ga.bam} 
			# bamファイル (赤字の部分)がデフォルト (ga) を指定.通常はデフォルトで問題ありません.
			# exome/data/output/${引数1:サンプル名}/{RUN日}/${bam_directory}/${bam_file_name}
			
			# コマンド
			qsub merge_bamfiles.sh /home/testuser/exome/data/output/sample01/120405/map_bwa/tumor/ga.bam,home/testuser/exome/data/output/sample01/110415/map_bwa/tumor/ga.bam sample01 tumor
			# このコマンド結果 BAMファイル
			../data/output/sample01/merge/map_bwa/tumor/ga.bam

qsubでジョブを起動したらjobIdが画面に表示されるのでメモしておきましょう.後でログを見るときに必要です.

3. Realignment


リアライメントを実施します.

exome/scriptディレクトリ内で実行してください!

			qsub realign_gatk.sh [ options ] 引数1 引数2 引数3 [引数4] [引数5]
			# 引数1:サンプル名
			# 引数2:run日(項番3のMERGE MAPPED BAMでmergeディレクトリにBamファイルが作成されたときは、run日=merge となります.)
			# 引数3:サンプルタイプ (normal tumor を比較するときはこちらにnormal type を記載してください.) 
			# 引数4:サンプルタイプ (引数3のnormal type と比較します.)
			# 引数5:サンプルタイプ (引数3のnormal type と比較します.tumorが2種類ある場合は指定.任意の引数です.)
			# options
			# -j {s|m|l デフォルト:m} 
			# スーパーコンピュータで使用するジョブを選択できます.s=sjob,m=mjob,l=ljob
			# -i {インターバルリスト デフォルト:interval_list_hg19_nogap}
			# BAMファイルを分割する(処理の並列化)ために必要なファイルを格納しているディレクトリを指定します.
			
			# コマンド
			qsub realign_gatk.sh sample01 120405 normal tumor
			# このコマンド結果 BAMファイル
			../data/output/sample01/120405/realign_gatk/tumor/realigned.bam
			../data/output/sample01/120405/realign_gatk/normal/realigned.bam

qsubでジョブを起動したらjobIdが画面に表示されるのでメモしておきましょう.後でログを見るときに必要です.

4. Mutation Calling & Annotation (Fisher's exact test)


データ解析を実施します.

exome/scriptディレクトリ内で実行してください!

			qsub fisher_test.sh [ options ] 引数1 引数2 引数3 引数4 [引数5]
			# 引数1:サンプル名
			# 引数2:データ解析実施日 これはRUN日ではありません.RUN日を指定するときはオプション -tを使用してください.同じサンプルのBAMファイルを複数回 Mutation Callする(Mapping_Quality,Base_Quality,Max_Indelを調整する)ことを見越して引数になってます.
			# 引数3:サンプルタイプ (normal tumor を比較するときはこちらにnormal type を記載してください) 
			# 引数4:サンプルタイプ (引数3のnormal type と比較します)
			# 引数5:サンプルタイプ (引数3のnormal type と比較します.tumorが2種類ある場合は指定.任意の引数です.)
			
			# options
			# -j {s|m|l デフォルト:m}
			# スーパーコンピュータで使用するジョブを選択できます.s=sjob,m=mjob,l=ljob 
			# -m {Mapping_Quality デフォルト:30} 
			# Fisher検定を行うときに指定した以下のマッピングクオリティーのリードを除外します.
			# -b {Base_Quality デフォルト:15} 
			# Fisher検定を行うときに指定した以下のベースクオリティーのベースを除外します.
			# -x {Max_Indel デフォルト:2} 
			# 検定を行うときに1リード内のインデルの数が指定した数以上である場合は除外します.
			# -i {インターバルリスト デフォルト:interval_list_hg19_nogap}
			# BAMファイルを分割する(処理の並列化)ために必要なファイルを格納しているディレクトリを指定します.
			# -t {RUN日 デフォルト:merge} ディレクトリ階層の一部の${RUN日}が変更できます.
			# exome/data/output/sample01/${RUN日}/realign_gatk/tumor/realigned.bam
			# -g {Bamディレクトリ デフォルト:realign_gatk} ディレクトリ階層の一部の${Bamディレクトリ}が変更できます.
			# exome/data/output/sample01/merge/${Bamディレクトリ}/tumor/realigned.bam
			# -f {Bamファイル デフォルト:realigned.bam} bamファイルの名前が変更できます.
			# exome/data/output/sample01/merge/realign_gatk/tumor/${Bamファイル} 拡張子まで必要です.
			
			# コマンド
			# 下記のファイルの解析を行う場合 (realignment したbamの解析を行う)
			# exome/data/output/sample01/merge/realign_gatk/normal/readligned.bam 
			# exome/data/output/sample01/merge/realign_gatk/tumor/readligned.bam 
			qsub fisher_test.sh sample01 120430 normal tumor

			# 下記のファイルの解析を行う場合 (mergeしていない、かつrealignment したbamの解析を行う)
			# exome/data/output/sample01/120415/realign_gatk/normal/readligned.bam 
			# exome/data/output/sample01/120415/realign_gatk/tumor/readligned.bam 
			qsub fisher_test.sh sample01 120430 normal tumor -t 120415

			# 下記のファイルの解析を行う場合(realignment していないbamの解析を行う)
			# exome/data/output/sample01/merge/map_bwa/normal/ga.bam 
			# exome/data/output/sample01/merge/map_bwa/tumor/ga.bam 
			qsub fisher_test.sh sample01 120430 normal tumor -g map_bwa -f ga.bam

			# 下記のファイルの解析を行う場合(mergeしていない、かつrealignment していないbamの解析を行う)
			# exome/data/output/sample01/120415/map_bwa/normal/ga.bam 
			# exome/data/output/sample01/120415/map_bwa/tumor/ga.bam 
			qsub fisher_test.sh sample01 120430 normal tumor -t 120415 -g map_bwa -f ga.bam
			
			# このコマンド結果 データ解析結果ファイル
			exome/data/result/sample01_120430/fisher_test/sum_sample01_120430_tumor.genome.result.txt # 結果ファイルです.
			exome/data/result/sample01_120430/fisher_test/sum_sample01_120430_tumor.exome.result.txt  # genome.result.txt から exomeのみ取り出したものです.
			
			# 結果が失敗しているときに確認したいファイルです.問い合わせされる時などに有益です.とりあえず残しておいてください.
			exome/data/result/sample01_120430/fisher_test/output.tumor_normal.anno
			exome/data/result/sample01_120430/fisher_test/output.tumor.anno
			exome/data/result/sample01_120430/fisher_test/output.normal.anno
			exome/data/result/sample01_120430/fisher_test/enpty_tmp_file.list
			# いらないファイルたち,中間ファイルです.すみません.次回リリースで削除します
			exome/data/result/sample01_120430/fisher_test/sum_sample01_120430_tumor.exome_summary.txt
			exome/data/result/sample01_120430/fisher_test/sum_sample01_120430_tumor.genome_summary.txt

qsubでジョブを起動したらjobIdが画面に表示されるのでメモしておきましょう.後でログを見るときに必要です.

5. Copy Number Data Analysis


Copy Number Data 解析を実施します.

exome/copy_number/script ディレクトリ内で実行してください!

				bash copy_num.sh 引数1 引数2 引数3 引数4 (引数5)
				# 引数1:input bam(tumor)
				# 引数2:input bam(normal)
				# 引数3:output ディレクトリを指定してください.
				# 引数4:tag ジョブ投入時の一意キーや、出力ファイル名として使われます.サンプル名_rundate がおすすめです.
				# (引数5):設定ファイル 任意の指定です.引数5を指定しないとcopy_number/script/copynum.env が読み込まれます.必要であれば、この引数を指定して読み込む設定ファイルを変更してください.
				
				# コマンド
				bash copy_num.sh /home/genomon/exome/data/output/sample01/120430/map_bwa/tumor/ga.bam /home/genomon/exome/data/output/sample01/120430/map_bwa/normal/ga.bam /home/genomon/exome/data/output/sample01/120430/copyNum Sample01_120430
				# このコマンド結果 Copy Numberデータ解析結果ファイル
				../data/output/sample01/120430/copyNum/sample01_120430.tumor_as.pdf
				../data/output/sample01/120430/copyNum/sample01_120430.tumor_total.pdf
				
				# ジョブを2種類同時に実行する場合は,tagを必ずユニークに指定してください.
				bash copy_num.sh /home/genomon/exome/data/output/sample01/120430/map_bwa/TAM/ga.bam /home/genomon/exome/data/output/sample01/120430/map_bwa/normal/ga.bam /home/genomon/exome/data/output/sample01/120430/copyNum Sample01_120430_TAM
				bash copy_num.sh /home/genomon/exome/data/output/sample01/120430/map_bwa/AMKL/ga.bam /home/genomon/exome/data/output/sample01/120430/map_bwa/normal/ga.bam /home/genomon/exome/data/output/sample01/120430/copyNum Sample01_120430_AMKL

ジョブが完了したか確認しましょう.確認方法はこちら

6. Mutation Calling & Annotation (Empirical Baysian mutation Calling)


ノーマルリファレンスリストを作成します.ノーマルリファレンスサンプルのbamファイル Path 一覧を作成します.ファイル名はご自由に(e.g. myNormalRef.txt).

			/home/genomon/exome/data/sequence/normalreference1.bam
			/home/genomon/exome/data/sequence/normalreference2.bam
			... (省略)
			/home/genomon/exome/data/sequence/normalreference10.bam  # ファイルの最後に空行を入れないでください.

C のプログラムがあるので、コンパイルします。

			# exome/eb_call ディレクトリ
			make

Empirical Baysian mutation Calling shell を起動します.exome/eb_call ディレクトリにあります.

				bash ebCall.sh 引数1 引数2 引数3 引数4 引数5 (引数6)
				# 引数1:input bam(tumor)
				# 引数2:input bam(normal)
				# 引数3:output ディレクトリを指定してください.
				# 引数4:上で作成したノーマルリファレンスリスト.
				# 引数5:tag ジョブ投入時の一意キーや、出力ファイル名として使われます.サンプル名_rundate がおすすめです.
				# (引数6):設定ファイル 任意の指定です.引数6を指定しないとeb_call/config.sh が読み込まれます.
				
				# コマンド
				bash ebCall.sh /home/genomon/exome/data/output/sample01/120430/map_bwa/tumor/ga.bam /home/genomon/exome/data/output/sample01/120430/map_bwa/normal/ga.bam /home/genomon/exome/data/output/sample01/120430/ebcall /home/genomon/exome/ebcall/list/myNormalRef.txt Sample01_120430
				# EB Call 結果ファイル
				../data/output/sample01/120430/ebcall/Sample01_120430/output.txt
				
				# ジョブを2種類同時に実行する場合は,tagを必ずユニークに指定してください.
				bash ebCall.sh /home/genomon/exome/data/output/sample01/120430/map_bwa/TAM/ga.bam /home/genomon/exome/data/output/sample01/120430/map_bwa/normal/ga.bam /home/genomon/exome/data/output/sample01/120430_TAM/ebcall /home/genomon/exome/ebcall/list/myNormalRef.txt Sample01_120430_TAM
				bash ebCall.sh /home/genomon/exome/data/output/sample01/120430/map_bwa/AMKL/ga.bam /home/genomon/exome/data/output/sample01/120430/map_bwa/normal/ga.bam /home/genomon/exome/data/output/sample01/120430_AMKL/ebcall /home/genomon/exome/ebcall/list/myNormalRef.txt Sample01_120430_AMKL

ジョブが完了したか確認しましょう.確認方法はこちら

^ Go to Top