遺伝研スパコンやLinux, Ubuntuなどの環境でNCBIのリファレンスゲノムを集める方法を基本から抑える。学部生に指導したときの資料を下敷きにしている。
ゲノムの選定方法などについては以前の記事を参照してほしい。
Linux基本コマンド
簡単におさらいしておく。
カレントディレクトリの確認
pwd出力例: /home/user/project
現在のディレクトリをフルパスで表示する。
ディレクトリ一覧の表示
lsカレントディレクトリのファイル・フォルダを表示する。
よく使うオプション:
ls -l # 詳細表示(パーミッション、サイズ、日時など)
ls -a # 隠しファイルも含めて表示
ls -h # ファイルサイズを人間が読みやすい形式で表示
ls -lh # 詳細 + 読みやすいサイズで表示ディレクトリへの移動
cd /path/to/directory # 絶対パスで移動
cd .. # 1階層上に移動
cd ~ # ホームディレクトリに移動
cd - # 前いたディレクトリに戻るディレクトリの作成
mkdir my_project # 単一ディレクトリを作成
mkdir -p dir1/dir2/dir3 # ネストしたディレクトリを一括作成ファイルの閲覧
cat filename # ファイル全体を表示
head filename # 最初の10行を表示
head -n 5 filename # 最初の5行を表示
tail filename # 最後の10行を表示
wc -l filename # 行数をカウントファイルコピー・移動・削除
cp source.txt destination.txt # ファイルのコピー
cp -r source_dir dest_dir # ディレクトリをコピー(-rは再帰)
mv old_name.txt new_name.txt # ファイルの名前変更・移動
rm filename # ファイルの削除
rm -r directory # ディレクトリとその内容を削除wget でファイルをダウンロード
wget https://example.com/file.gzcurl でファイルをダウンロード
curl -O https://example.com/file.gz # ファイルを同じ名前で保存
curl -o custom_name.gz https://example.com/file.gz # カスタム名で保存ファイルの圧縮・解凍
gzip filename # .gz形式で圧縮
gunzip filename.gz # 解凍
tar -xzf archive.tar.gz # tar.gz形式を解凍
tar -czf archive.tar.gz directory/ # ディレクトリを圧縮ファイルサイズの確認
du -sh filename # ファイルサイズを表示
du -sh directory/ # ディレクトリサイズを表示リファレンス配列とは
リファレンス配列(参照ゲノム)は、NGSデータマッピングやバリアント検出の基準となるゲノム配列である。
バイオインフォマティクス解析の流れ:
生のシークエンスデータ(FASTQ)
↓
マッピング(BWA, STAR等)
↓
リファレンス配列 ←─ここにマップ
↓
マッピング済みリード(BAM)
↓
バリアント検出・アセンブリ
NCBIにはたくさんの生物種のゲノムが登録されている。ヒトやマウスといった典型的なモデル生物のダウンロードはGENCODEなどが整備されているため迷うことは少ないが、進化生物学などで用いる場合は様々なゲノムがあり迷うことがあるだろう。以下の記事を参照していい感じのゲノムを探してきてほしい。
さて、ここではこの記事の続きから行いたい。FTPのページを見てみよう。
アセンブルに付属したゲノム配列、アノテーションなどの情報がアップロードされているFTPサーバのディレクトリを示している。
このディレクトリには複数のファイル形式が含まれている。NCBIでよく使われるファイル形式は以下の通り:
*_genomic.fna.gz– ゲノム塩基配列(FASTA形式)*_rna.fna.gz– トランスクリプト塩基配列*_protein.faa.gz– タンパク質アミノ酸配列(FASTA形式)*_genomic.gff.gz– 遺伝子アノテーション情報(GFF形式)*_assembly_report.txt– アセンブリ情報
記号の意味:
fna= FASTA Nucleic Acid(塩基配列)faa= FASTA Amino Acid(アミノ酸配列)gff= General Feature Format(アノテーション情報)
今回は繰り返し配列の解析を目的としているため、*_genomic.fna.gzのゲノム配列ファイルをダウンロードする。
右クリックしてリンクをコピーして、遺伝研スパコンのターミナルで上記のwgetなどでやったとおりにダウンロードする。
wget https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/012/345/678/GCF_012345678.1_hogehoge/012345678.1_hogehoge_genomic.fna.gzこれでカレントディレクトリにファイルがダウンロードされる。
解凍前のファイル確認
# 圧縮ファイルサイズの確認
ls -lh *.gz
# ファイルの整合性確認(チェックサム)# NCBIサイトからmd5sum値を取得し比較(必要に応じて)
md5sum hoge_genomic.fna.gz解凍とヘッダー確認
# ファイルを解凍(*は自動展開文法)
gunzip *.gz
# FASTAファイルのヘッダー行を確認(最初の5行)
head -n 5 hoge_genomic.fnaFASTAファイル形式の確認
>NC_91242421.1 Hoge hogetarou chromosome 1, whole genome shotgun sequence
TCAGTCACGCTGATCAATCAATGTAGAGAGTGAATCGATCGTAGACGAGTCGAGCT...
GATCGTAGTCGATCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCTAGCT...FASTAフォーマット:
>で始まるヘッダー行:配列の説明- その後の行:実際のDNA配列(ATGC)
複数ゲノムの一括ダウンロード
スクリプトを用いた効率的ダウンロード
シェルスクリプトを組んで効率的なダウンロードが可能である。
download_genomes.sh の例
#!/bin/bash
# アクセッション番号のリスト
accessions=(
"GCF_012674128.1"
"GCF_012456789.1"
"GCF_123456789.1"
)
# ダウンロードディレクトリを作成
mkdir -p reference_genomes
cd reference_genomes
# 各アクセッションについてダウンロード
for accession in "${accessions[@]}"; do
echo "Downloading $accession..."
# アクセッション番号からFTPパスを構築
# 例: GCF_011762595.2 -> GCF/011/762/595/
dir_path=$(echo "$accession" | sed 's/\(GCF\|GCA\)_/\1\//' | sed 's/\(..\)/\1\//g' | sed 's/\..*//g')
# ダウンロード
wget "https://ftp.ncbi.nlm.nih.gov/genomes/all/${dir_path}/"*"_genomic.fna.gz"
doneこれで一括ダウンロードが可能となる。
このような感じで、データをサクサクとダウンロードしてみよう。また、今回はゲノム解析のためのリファレンス配列集めを目的としているが、RNA-seqであればアノテーションのデータ(GTF/GFF)などを一緒にダウンロードする必要がある。



![【Qiskit】マルチオミクス解析を量子機械学習でやる①[環境構築・基礎]](https://kimbio.info/wp-content/uploads/2024/05/2203027-100x100.jpg)



