ScipyでDunnettの検定をする

 Scipyの最新バージョン(1.12.0)ではDunnettの検定が実装されている。Dunnett検定については別途調べてほしいが、多重検定のひとつだ。コントロールとなる群といくつかの実験群を比較し、検定する。

 Scipyを使えば簡単にできる。以下は公式ドキュメントのサンプルの簡単な翻訳。

import numpy as np
control = np.array([7.40, 8.50, 7.20, 8.24, 9.84, 8.32])
drug_a = np.array([9.76, 8.80, 7.68, 9.36])
drug_b = np.array([12.80, 9.68, 12.16, 9.20, 10.55])

この場合、np.arrayでやってるが、別にこの形式(一次配列)なら何でも大丈夫。私はPandasと併せて使った。

from scipy.stats import dunnett
res = dunnett(drug_a, drug_b, control=control)
res.pvalue

これだけでDunnett検定の結果のp値を出してくれる。

それぞれコントロール(対照群)に対するDrug_aとDrug_b(実験群)のp値が表示される。

array([0.62004941, 0.0059035 ])

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です