CONNチュートリアル 10: Setup – Covariates 2nd-level

続いてCovariates 2nd-levelの設定です。
このCovariates 2nd-levelは、今設定しなくても大丈夫です。
(逆に言うと、これまで設定してきたものは最初に設定する必要があります。)
2nd levelのCovariatesは解析を進めていくなかで追加したくなるものもありますので、そのような親切な設計になっています。

ただ、今は、設定しましょう。

楽をしたいので、Matlabの方で少し準備を進めます。

まず、Matlabで現在のディレクトリを確認します。

pwd

で確認できます。

conn037

もし、conn_practiceのディレクトリにいないようでしたら、移動します。

そして、さらにその下のsampleディレクトリに移動します。

cd sample

この中にSubjects.txtというファイルがあります。
これはMatlabで読み込むことができるように工夫してあります。

これをMatlabで読み込み、subjという変数に代入しましょう。
変数名は何でもいいのですが、タイプすることを考えると短い方がいいでしょう。

Matlabから

subj=load('sample.txt');

とすると、右側のワークスペースにsubjという変数ができているのがわかります。

subj

でその内容を見ることができます。

conn038

ここで、第1列は、IDなので実際は使いません。
第2列は、診断(健常者か統合失調症か)
第3列は、年齢
第4列は、性別(男性が1、女性が2)

となっています。

Matlabでは、変数の中で特定の列だけ使いたい場合は、

変数(:,その列)

という表し方をします。

今の場合、診断だけ取り出したいのであれば、

subj(:,2)

で表すことができます。

それで、CONNはMatlabで動くので、今作った変数をそのまま使うことができます。

それでは、CONNに戻ります。

左側のメニューからCovariates 2nd-levelに進みます。

conn039

そして、画面中央の左側にあるCovariatesで”All Subjects”とある下をクリックします(何もないところです)。
そうすると、右側にenter covariates name hereと出てきます。

conn040

これから、診断と年齢と性別を順番にいれていきましょう。

まずは診断です。もともとのファイルには、健常者0、統合失調症1となっていますが、今後、群間比較することを考えて、controlという変数とpatientという変数を準備します。

まず、健常者から準備しましょう。

covariates nameを “control” とします。

[0 0 0 … 0 0 0]と0が20個並んでいますが、これを削除し、以下のようにタイプしてEnterキーを押してください。

subj(:,2)==0

subj(:,2)は先ほど出てきたものです。

subj(:,2)==0は、Matlabでの論理値というもので、0であれば真の値として1を、それ以外は偽の値ということで0を返すものです。つまり、今の場合、健常者は0なので、0であれば1にして、それ以外(といっても1しかないのですが)は0にするというものです。

そうすると、下のようになるはずです。

conn041

次に、patientを準備します。

covariates nameを “patient” とします。

Valuesは

subj(:,2)==1

となります。

同様に、年齢、性別も入れていきましょう。

年齢は
covariates name: age
values: subj(:,3)

性別は
covariates name: gender
values: subj(:,4)

とします。

その結果、図のようになります。

conn042

ここまでできれば、共変量の設定はおしまいです。

4 thoughts on “CONNチュートリアル 10: Setup – Covariates 2nd-level

  1. 非常に丁寧なCONNチュートリアル、誠にありがとうございます。
    安静時fMRI解析のCovariateについて一点質問させて頂いても宜しいでしょうか?
    精神神経疾患の中でもアルツハイマー病のようなものですと、側頭葉(海馬)付近の灰白質に萎縮を認めることが多いと思うのですが、そのように灰白質に萎縮を認めるような疾患の場合(実際にVBMで萎縮を認めたような場合)、灰白質容積などをCONNの2nd covariatesに入れるべきなのでしょうか?
    CONNはROI analysisがメインですので、ROI毎(灰白質の部位ごと?)の容積などを準備する必要があるのでしょうか?
    CONNチュートリアルの使い方を越えて安静時fMRI解析の一般的なことになってしまい恐縮ですが、ご教授頂けますと幸いです。

    • ご質問ありがとうございます。

      ご質問に対しては、Covariatesの意義をもう一度見直す必要があると思います。

      Covariates(今の場合は、狭義のcovariates, すなわちnuisance variablesになりますでしょうか)
      は、ある観測値に対して、影響し得る値のことですよね。

      ご指摘のように、アルツハイマー病では、海馬が小さくなります。
      ただ、頭の小さい人はもともと海馬が小さい可能性があります。
      そのときに、海馬が小さい=異常とは言えないわけで、
      頭の大きさを勘案したうえで、海馬が小さかったら異常と言えるわけです。

      CONNにおいては、観測値が何になるかというと、各関心領域におけるBOLD信号の時系列データとなります。

      BOLD信号の時系列データに萎縮が影響するかというと、あるボクセルに関心を向けるならば、そのボクセルにおけるBOLD信号のあがりさがり
      を見ているわけですので、萎縮はあまり影響しないということになるような気がします(断言するのは憚られるので弱く表現します)。

      したがって、私の意見では、CONNの2nd-levelにおいて灰白質容積をcovariateに指定する意義は少ないと思います。

      (ちなみに、脳血流SPECTにおいては、勘案しないといけないです。局所脳血流は部分容積効果の影響を受けるので、容積が小さいと、血流が下がったように見えてしまうので、
      その補正はしないといけないです。脳血流はワンポイントのデータですので。fMRIは時系列データであるというところが決定的な違いです)

      • 大変ご丁寧な回答、誠にありがとうございます。とてもよく理解できました。
        先生のチュートリアルを拝見して興味を持ちCONNを使い始めてみました。
        2nd-level analysis含めて取り組んでみたいと思っています!

        • ありがとうございます。
          今、時間がなくて更新できていないのですが、
          近日中に2nd-levelのところにも踏み込んでいきます。
          どうぞよろしくお願いします。

コメントを残す