CASE 06発現解析

発現量が変動したRNAを見つける
2群間比較・可視化システムの開発

RNAシーケンスで得たカウントデータを、群と時点の組み合わせごとに比較するシステムを開発しました。統計的な検定から、ボルケーノプロットとヒートマップの作図までを自動化し、変動したRNAを機械学習用の特徴量に変換する処理も実装しています。

CLIENT
微生物系研究室
SCOPE
解析システムの設計・実装
ENVIRONMENT
スーパーコンピューター(ジョブ投入)
TECHNOLOGY
  • R
  • edgeR
  • ggplot2
  • pheatmap
  • Python
  • RDKit
  • Mordred

研究で求められたこと

複数の群と時点にわたるRNAの発現データから、条件によって発現量が変わるRNAを見つける必要がありました。比較の組み合わせが多く、検定と作図を1件ずつ行うのは手間がかかる状況でした。

  • 多くの組み合わせを同じ条件で比較する3つの群と2つの時点を組み合わせた、6通りの2群間比較が必要でした。
  • 変動したRNAをひと目で把握する数千件におよぶ検定結果から、発現が増えたRNAと減ったRNAを見分けられる図が求められました。
  • 比較結果を次の解析に活かす抽出した変動RNAを、機械学習モデルの入力として使える形にする必要がありました。

処理の全体像

Excelのカウントデータを読み込み、群と時点の組み合わせごとにedgeRで2群間比較を行います。比較ごとに検定結果の表とボルケーノプロット、ヒートマップを出力します。変動の大きいRNAは配列から記述子を計算し、学習用のデータセットにまとめます。

発現量の2群間比較と可視化の仕組みサンプルごとの転写産物カウントをExcelから読み込み、対照・病態・処置の3群と2つの時点を組み合わせた6通りの2群間比較をedgeRで実行する。比較ごとに検定結果の表、変動の大きい転写産物を強調したボルケーノプロット、カウントのヒートマップを出力する。抽出した変動RNAは配列を取得して記述子に変換し、機械学習用のデータセットを作成する。01 COUNT DATA02 COMPARISON03 VOLCANO PLOT04 HEATMAP05 FEATURES対照病態処置miR-1miR-21miR-34miR-122miR-145miR-155miR-200ncRNAサンプル × 転写産物のカウント2群間比較(edgeR)TMM正規化分散の推定正確検定比較の組み合わせ(時点ごと)対照 – 病態4M · 6M対照 – 処置4M · 6M病態 – 処置4M · 6MP = 0.05増加減少log2 Fold Change−log10 P実数・対数変換の2種類をPDFで出力変動RNAの抽出logFC・P値で選択配列の取得miRBase / Ensembl記述子の計算RDKit · Mordredデータセット学習・検証・テスト比較結果を、機械学習の特徴量づくりに活用
FIGURE6通りの2群間比較をまとめて実行し、ボルケーノプロットで変動したRNAを、ヒートマップでサンプルごとの発現量を示します。比較結果は機械学習用の特徴量づくりにも利用します。

INPUT

  • カウントデータサンプルごとの転写産物のリード数(Excel)
  • 設定ファイル群の割り当て、しきい値、図のサイズ
  • 参照配列miRBase、EnsemblのノンコーディングRNA

PROCESS

  1. データの読み込みカウント列を抽出し、群ごとに整理
  2. 低発現RNAのフィルタリング設定に応じて実行
  3. 2群間比較正規化・分散の推定・正確検定(edgeR)
  4. 作図ボルケーノプロットとヒートマップ
  5. 特徴量の作成変動RNAの配列から記述子を計算

OUTPUT

  • 検定結果の表logFC・logCPM・P値・FDR
  • ボルケーノプロット比較ごとのPNG
  • ヒートマップ全サンプル・比較ごと、実数と対数変換のPDF
  • 学習用データセット学習・検証・テストに分割した記述子

開発のポイント

群の割り当てや強調表示のしきい値を設定ファイルにまとめ、コードを変更せずに条件を調整できる構成にしました。

POINT 01

6通りの比較を同じ手順で一括実行

対照・病態・処置の3群を、2つの時点それぞれで総当たりに比較します。正規化から分散の推定、正確検定までを共通の関数で処理するため、すべての比較を同じ条件で実行できます。

  • edgeR
  • TMM正規化
  • exactTest

POINT 02

変動したRNAが分かるボルケーノプロット

発現の変化量(log2 Fold Change)とP値をもとに、しきい値を超えて増加したRNAと減少したRNAを色分けして表示します。しきい値の位置は破線で示し、設定ファイルから変更できます。

  • ggplot2
  • しきい値の設定

POINT 03

サンプル間を見比べるヒートマップ

全サンプルと比較ごとに、カウントのヒートマップを出力します。値の差が大きいデータでも傾向を読み取れるよう、実数と対数変換の2種類を作成し、図のサイズや文字の大きさも設定で調整できます。

  • pheatmap
  • 対数変換

POINT 04

変動RNAを機械学習の特徴量に変換

比較結果から変動の大きいRNAを選び、miRBaseとEnsemblから配列を取得します。配列を分子構造に変換して記述子を計算し、学習・検証・テストに分けたデータセットとして出力します。

  • RDKit
  • Mordred
  • miRBase
  • Ensembl

技術構成

統計解析と作図はR、配列の取得と記述子の計算はPythonで実装し、それぞれをスーパーコンピューターのジョブとして実行できるようにしています。

区分技術用途
統計解析R/edgeR正規化、分散の推定、2群間の正確検定
可視化ggplot2/pheatmapボルケーノプロット、ヒートマップの出力
配列データmiRBase/Ensembl転写産物IDに対応する配列の取得
特徴量Python/pandas/RDKit/Mordred変動RNAの抽出、記述子の計算、データセットの作成
実行環境conda/ジョブスケジューラR・Python環境の構築、解析ジョブの投入

実現したこと

  • 比較と作図の自動化6通りの2群間比較と、検定結果の表・ボルケーノプロット・ヒートマップの出力を、コマンド1つで実行できるようになりました。
  • 変動RNAの把握比較ごとに、発現が増加・減少したRNAを図で確認できます。
  • 機械学習へのデータ連携比較結果をもとに変動RNAを特徴量化し、予測モデルの学習に使えるデータセットを作成できます。

研究テーマに合った開発方法を、
一緒に検討します

扱うデータや研究目的に応じて、必要なモデルとシステムをご提案します。検討中のテーマや実装したい機能からご相談ください。

研究開発について相談する