Manual PowerGet PowerFT MainWorkFlow PeakDetection

提供:KOMICS WIKI
移動: 案内, 検索

解析ステップ1)Peak Detection - ピーク検出

目次

このステップでは、Full MSの全データから、近いm/zを持つイオンを溶出時間方向につなぎ合わせ、そのシグナルの消長からピーク部分を検出します。この時点では、単一化合物に由来する12Cピークと13Cアイソトープピークを関連づけたりなどは、まだ行われません。ピークが立ち上がりバックグラウンドレベルになるまで溶出時間方向に連続して出現するイオンをまとめ上げるだけです。このように、ひとつのピークを形成するイオン群を、ここでは「イオングループ」と呼んでいます。

PowerFTでのピーク検出では、セントロイド化されたマススペクトルが使用されます。


準備

Peak Detectionツールの起動

メイン画面FileメニューのOpen Home Directoryで、ホームディレクトリを選択します。その後、AnalysisメニューのPeak Detectionを選択してください。ツール画面が表示されます。

データの選択

ツール画面のFileメニューからNew Analysisを選ぶと、右図のような画面が表示されます。

フォルダアイコンをクリックして解析に使用するFull MSファイルを選択してください。Full MSファイルは、内標補正をしていないものを使用してください。
Analysis Name欄に適当な解析名を入力してください。デフォルトの「New Analysis」のままでも結構です。
OKボタンを押してください。

※同じFull MSファイルに対して、パラメーター設定を変えて複数のデータ解析をするようなケースを考え、PowerFTでは、それぞれのデータ解析に解析名を与えて区別しています。

この操作を行うと、ホームディレクトリに「Analysis」フォルダが作成され、その中に上記でつけた解析名のフォルダが作成されます。以降の解析データは、この解析名のフォルダに保存されてゆきます。

ピークの検出

ピーク検出の概要

m/zの近いイオンを集めて、シグナル強度の消長(ピークの立ち上がりと終わり)を検出するためには、マスクロマトグラムのデータを、m/z方向に微小な範囲で区切って集計することが必要です。通常これには、m/zを決まった幅ずつ区切る方法が使われます(たとえばm/zを0.1ずつ区切るなど)。このように区切られた区画のことをbin(ビン)と呼びます。

高分解能MSでは、非常に小さな質量範囲(たとえばm/z 0.001ずつ)でbinを形成しないと、高分解能を生かしたピーク検出ができません。一方binの幅を細かくしすぎると、丁度binの境界線に乗ってしまう化合物ピークが増えてしまったり、局所的なマスずれによる影響を受けてピークが分断されてしまったりします。また、コンピューターの計算量も膨大になってしまいます。

そこでPowerFTでは、binを形成しない独自のアルゴリズムでピークを検出します。

  1. まず、決められた条件で隣接するm/zの近いイオンをつなぎ合わせグループを形成してゆきます(Ion Grouping)。
  2. その後、グループ化されたイオン群同士を少し緩い条件でつなぎ合わせてゆき、収束するまで繰り返します(Group Merging)。
  3. こうしてマージされたイオンの連なりをbinと見立てて、ピークの消長を判定し、ピーク部分を検出します。
  4. ここで検出されたピーク部分には、複数のピーク成分が含まれる可能性があります。最後のステップとして、1スキャンポイントごとに1イオンずつとなるよう、ピーク成分を分解します。ここでは、このように分解されたピークを「Real Peak」と呼びます。

上記のプロセス1と2についてはSettingメニューのSetting for Ion Groupingで、プロセス3についてはSetting for Peak Detectionで設定を行います。

イオングループの形成

条件設定 Setting for Ion Grouping

SettingメニューのSetting for Ion Grouping...を選択すると、右図のような画面が表示されます。

プロセス1のイオンのグループ化では、つなげて良い隣接するイオンのm/z値の判定に、二つの方法が選べます。

  • by rounded m/z: イオンのm/zを四捨五入して、同じであればつなげる方法
  • by dif. with neighbor ions: 隣接するイオンとのm/zの差が、指定したもの以内であればつなげる方法

このほか、許容するスキャンポイントのギャップ数と、イオン強度の足切り値を設定できます。


プロセス2の、イオングループのマージでは、イオングループの平均m/zの差の許容範囲と、イオングループ末端同士の許容スキャンギャップ数を指定できます。

グループ化処理

条件設定が済んだら、AnalysisメニューのDo Ion Groupingを選択します。処理が実行され、進行状況を示す小さなウィンドウが表示されます。しばらくしてこのウィンドウが消えれば、グループ化完了です。(01-3, 03-3, 04-4)

AnalysisメニューのOpen Grouped Ions Dataがアクティブになりますので選択してください。ツール画面のIon Groupsの欄に、マージされたイオングループが表示されます。Ion Groups欄の行をクリックすると、Ion Groups画面がひらき、マージされたイオンで形成されるTICを閲覧できます(グラフの色分けについては後述します)。

ヒント: 表のカラム名をクリックするとソートできます。Ion no.を2回クリックすると、繋がったイオン数が多いものが上位に表示されますので、繋がったイオンの状況を確認しやすくなります。

ツール画面のTable Modeプルダウンを「Ion Group」から「Mass window」に変更すると、その下のWindow sizeで設定したm/zごとに、マージされたグループの平均m/zが振り分けられた結果が表示されます。この表現は一般的なbinの概念に近いものとなります。

ピーク検出処理

グループ化処理結果のグラフ表示を見ると、TICのラインの他に、スムージングがかかったライン、ベースライン、ピーク部位などが、既に書き込まれています。また、ツール画面下部のPeaksの欄にデータが表示され、ここをクリックすると、Real Peakという新たなウィンドウが開きます。

これらは、実はアルゴリズムの項で解説したプロセス3と4の結果です。デフォルトのピーク検出パラメーター設定を用いて、PowerFTが自動的に、選択したイオングループに対して計算をしているのです。

設定したパラメータの結果をこのように確認しながら決定し、よさそうであれば全計算をさせる、という流れになります。

ピーク検出の実行

パラメーター設定については次の項で詳細に解説します。ここでは検出の実行方法を説明します。

全計算させるには、AnalysisメニューのDetect and Output All Peaksを選択します。進捗を示すウィンドウが現れるので、100%になるのを待ってください。この処理は、お使いのコンピューター環境によっては10分以上かかる場合もあります。

処理が終わるとウィンドウが消えます。計算結果は解析名フォルダの中に自動的に保存されます。(10)


トラブルシューティング:

Detect and Output All Peaksを押し進捗ウィンドウが一瞬表示されたと思ったら、PowerFTが突然シャットダウンしてしまうことがあります。こちらをご参照ください。

ピーク検出アルゴリズムとパラメーター設定

ピーク部位の検出

SettingメニューのSettings for Peak Detection...で、ピーク検出パラメーターの設定を行います。設定項目とピーク検出のアルゴリズムについて解説します。


検出アルゴリズムは、以下の1)~3)のステップに大別されます。

1)クロマトグラムのスムージング

マージしたイオングループの形状となるクロマトグラムの集計法について、同じスキャンポイントに複数のイオンが含まれていた場合に、足し算をするか、最大値を取るかを(A)で選択します。

このクロマトグラムをもとにスムージングを行います。

スムージングの方法として、設定したポイント数での移動平均(Moving average)か、Savitzky-Golay法によるスムージングが選択できます(F)。

移動平均を用いる場合、ポイント数の上限(G)および下限(Q)を設定できます。 検出されたクロマトグラムにおけるスキャンポイント数の半数(α)が、設定した上限(G)よりも少ない場合には、自動的にスキャンポイント数の半数(α)でスムージングされます。下限(Q)はスキャンポイント数の半数(α)の下限を表しています。

Savitzky-Golay法の場合、左右のデータポイントにおけるスキャン数の上限(H, I)および下限(R, S)を設定できます。(J)は用いる関数の次数です。 処理対象のクロマトグラムにおける最大強度を基準とし、その半値以上の強度をもつスキャンポイント数(α)が、設定した上限値(H, I)よりも小さい場合は、自動的にその数(α)でスムージングされます。下限(R, S)はαの下限を表しています。

スムージングを繰り返す回数を設定出来ます(K)。

※移動平均のほうがピーク数が少なめに、Savitzky-Golay法のほうがピーク数が多めに検出される傾向があります。


2)一次有効ピークの判定

スムージングしたデータから、設定したポイント数(B)での移動平均およびSDを計算し、これを一次バックグラウンドとします。さらに、設定したポイント数(L)での傾きを最小二乗法で算出します。傾きが正から負に変わったポイントをピークトップとし、負から正に変わったポイントを、ピークの谷とします。

つぎに、移動平均よりも明らかに飛び出たピークトップ部分を検出します。この際、飛び出し判定は、そのスキャンポイントにおける移動平均+SD×factor(C)で行います。SDは、移動平均の算出に用いたポイント数でのSDと、イオングループ全体でのSDのうち、大きい方が採用されます。明らかに飛び出したピーク以外の部分を使って、スムージングしたクロマトの平均的な傾きとそのSDを算出します。算出した傾きの平均とSDから、ピークの立ち上がりと見なす閾値を決定します。閾値は、平均+SD×factor(O)です。

最後に、ピークの立ち上がりと終了を判定します。立ち上がりは、傾きが正に転じたポイントとピークトップ(負に転じるポイント)の間に、上記閾値以上を示す傾きが、設定したスキャン数(M)以上出現した場合に認識されます。逆にピークの終了は、ピークトップと、傾きが正に転じるポイントの間に、負の閾値が設定数(M)以上連続した場合に認識されます。ピークの立ち上がりと終了がともに検出できたピークを、一次有効ピークとします。


3)不分離ピークの評価および、正味の有効ピークとバックグラウンドの決定。

一次有効ピーク以外の部分を用いて、二次バックグラウンドを算出します。これは、2)で算出した一次バックグラウンドの中で、一次有効ピークのある部分を、ピークの開始と終了を結ぶ直線に置き換えたものです。この二次バックグラウンドを用いて、設定したポイント数(B)で移動平均とSDを計算します。SDは、移動平均の算出に用いたポイント数でのSDと、イオングループ全体でのSDのうち、大きい方が採用されます。

全ピーク候補のうち、二次バックグラウンドより有意に飛び出ているピークを見つけます。飛び出し判定は、ピークトップがバックグラウンド+SD×factor(E)以上かどうかで行われます。十分に飛び出したピークで、不分離ピークの処理をおこないます。すなわち、ピークの立ち上がりもしくは終了が検出されなくても、その直後または直前に十分に飛び出したピークがある場合は、その隣接ピークのショルダーピークとみなし、隣接ピークの一部として扱います。これを一次有効ピークセットとします。

一次有効ピークセットを用いて、再度バックグラウンドを算出します。すなわち、一次有効ピークセット以外の部分で、上記同様のバックグラウンドを算出します。これを正味のバックグラウンドとします。正味のバックグラウンドから十分飛び出したかどうかを、再度判定します。判定方法は、上記同様です。十分飛び出したピークを用い、不分離ピークの処理を行います。そして、ピークの開始、終了を含むピークセットを、正味の有効ピークセットとします。

最後に、正味のピークセットに含まれるスキャンポイント数が設定数に満たない場合(P)は、正味のピークセットから除外します。


(C)、(E)、(O)を上げるとピーク数が減ります。(J)は2か4です。(M)の最小値は1です。

Settings for peak detection画面の(D)と(N)は現在は使われていないパラメーターで、次期バージョンからは表示されなくなる予定です。

Real Peakの検出アルゴリズム

ピーク検出のプロセス4で得られる、1スキャンポイントに1イオンとなるピークことを、ここでは「Real Peak」と呼んでいます。現在のところ、Real Peakの検出は、プログラム中に書き込まれた設定値で自動的に処理されるため、ユーザーが設定する項目はありません。以下にそのアルゴリズムを解説します。


上記までで検出されたピーク部位には、1スキャン中に複数のイオンが含まれる場合があります。そこで、まずは1スキャンの中で一番強度の強いイオンを選択します。

最強強度のイオン群の中で、ギャップで分断されないグループを探し、その中で一番強いイオンのあるグループを、以下の処理で評価してゆきます。ギャップ数は、2ギャップまで許す設定になっています。

採用されたグループ中の各イオンが、その他のグループに属する可能性があるかどうかを評価します。各イオンについて、現在のグループのm/z平均値よりも近いm/zに、他のグループのイオンが存在し、それがピーク最小構成数以上存在する場合は、そのイオンは他のピークに属するものとみなして除外します。

生き残ったイオンを含むグループ中で、生じたギャップ中に、最強強度ではないがm/zの近いイオンが存在するかどうかを評価し、存在すればグループに加えます。また、グループの両端も同様に評価します。グループに加えるかどうかは、信頼区間99%で合格するかどうかで判定しています。

再度、グループがギャップで分断されないかどうかを判定し、分断される場合は、一番強度の強いイオンが含まれるグループを採用します。

このように取得されたグループを、Real Peakとします。

次に、Real Peakの平均m/zをもとに、最初に入力したイオン群を、よりm/zの小さいイオンサブセット、よりm/zの大きいイオンサブセットに分断します。 そして、それぞれのサブセットで、最強強度のイオンをつないでグループを作り、上記同様のReal Peakの検出を行います。

この過程を繰り返し行い、Real Peakが取得できなくなった時点で処理は終了します。

ピーク面積の取得とピーク形状の評価

取得されたReal Peakに対して、ピーク形状の評価を行うと共に、その過程で決定されたバックグラウンドとピーク半値幅を用いて、ピーク面積を算出します。

ピーク形状の評価結果は、フィッティングさせた正規分布の形状とのピアソン相関(Cor)とp-value(log 10)として、ツール画面下部のPeaks欄の右の二列に示されています。


現在のところ、この処理工程もプログラム中でパラメーターが固定されています。以下の解説で()内はReal Peakパネルの下部の図中での図形を示します。

元のReal Peakは、(青の線、赤のシンボル)で表示されています。


1)ベースラインの評価 (緑色の破線)

取得したReal Peakの両端に、m/zの近いイオンが存在するかどうかをしらべます。95%信頼区間に入る隣接イオンが存在した場合、そのイオンか、Real Peakの端のイオンのどちらか小さい方を、ピーク端のバックグラウンドとします。そのような隣接イオンが見つからない場合は、バックグラウンドは0とします。 ピーク両側のバックグラウンドを結ぶ直線を、正味のベースラインとします。

評価されたベースラインを差し引き、正味のintensityを出します。(黒の線) この際、ベースライン以下になるものは、0に置換されます。

正味のintensityをもとに、Savitzky-Golay法でスムージングします。(黄色の線、青のシンボル)

この際、Savitzky-Golayのパラメーターは、以下のように設定されます。すなわち、一番強度の強いイオンの半値以上のイオン数が、Savitzky-Golayの左右それぞれのイオン数として設定され、その最小値は2です。また、フィッティングする関数の次数は4次とします。 これは、Savitzky-Golayを4次で行う際の最適なポイント数が、ピーク幅であるという報告をもとに、このような設定にしました。


2)スプライン補間(ピンクのシンボル)

Savitzky-Golay法でスムージングをしたものを、スプライン補間します。

これにより、計算されたスプライン関数から、正確なピークトップ、ピーク左右の正確な半値ポイントを算出します。

ピンクのシンボルで示される部分は、半値幅を示しています。

ピーク強度は、この半値幅に含まれる、正味intensityを台形則で積分したものを採用しています。

ピークトップ、半値幅をもとに、これにフィットする正規分布を描きます(青の線、青のシンボル)

Real Peakの全領域を用いて、フィットさせた正規分布と正味intensityとの間での相関を計算します。相関は、ピアソン相関とコサイン相関を算出していますが、以降の解析で参照しているのはピアソン相関とそのp-valueです。(Peaks テーブルで表示されているもの)

データパネル

Ion Groupsパネル

Real Peakパネル

その他

既存のデータを読み込んで閲覧する

手作業でのピーク取得について(使えません)

個人用ツール
名前空間
変種
操作
案内
ツールボックス