読者です 読者をやめる 読者になる 読者になる

スポーツバイオメカニクス MatlabとOpenSIM

スポーツバイオメカニクスの分析によく用いられるMatlabとOpenSIMの使用に関する備忘録

t検定

毎度のことながら、久々の更新です。

以前、分散分析については記事にしていますが、分散分析よりももっとシンプルで用いられることも多いt検定について書いていませんでした。
そこで、今回はMatlabでt検定を行う方法を紹介したいと思います。

対応ありt検定(1標本)

そのまんまですが、対応ありの場合に用いるt検定です。
同じ被験者が異なる2つの条件で試技を行った際に比較する方法です。
条件1のときの値をa、条件2のときの値をbとしたとき、

h=ttest(a,b);

となります。
有意水準は5%に設定されており、有意差が認められた場合には、h=1と出力され、有意差が認められなかった場合には、h=0と出力されます。

有意確率も確認したい場合には、

[h,p]=ttest(a,b);

とすることで、pに有意確率が出力されます。

また、論文を書く際には、t値も必要になるかと思いますが、t値も含めた詳細な統計量を出力する際には

[h,p,ci,stats]=ttest(a,b);

とすることで確認できます。

MathWorksの公式な説明はこちらにあります。

対応なしt検定(2標本)

異なる2群間の差の検定には、対応なしのt検定を用います。
こちらも方法は至ってシンプルで、

[h,p,ci,stats]=ttest2(a,b);

とするのみです。
対応あり要因は「ttest」関数を用いましたが、対応なし要因は「ttest2」を用います。
利用方法は基本的に同じですので、割愛します。
また、対応なしt検定のMathWorksの説明はこちらから参照できます。

最後に

差の検定を行うにあたり、「とりあえず」で簡単に行えるのは今回紹介したt検定です。
MatlabSPSSを使わずとも、Excelの関数でも簡単に行えます。
ただし、検定にかけたい変数が膨大な場合には、Matlabで検定を行うことが便利な場合が多いでしょう。
また、Matlabを用いる利点としては、SPSSと比較して有効数字が大きいことが挙げられます。
特に、小数点以下にゼロが何桁も続くような非常に小さい値を用いる場合には、SPSSでは四捨五入されてしまうことがありますが、Matlabを用いた場合は浮動小数点計算が行われますので、かなりの精度で計算してくれます。
これは、Matlabを統計に用いることの大きな利点と言えるでしょう。