R でマクネマー検定を実行する方法


マクネマー検定は、ペアになったデータ間の比率に統計的に有意な差があるかどうかを判断するために使用されます。

このチュートリアルでは、R でマクネマー テストを実行する方法について説明します。

例: R でのマクネマー検定

研究者が、特定のマーケティング ビデオが特定の法律に対する人々の意見を変えることができるかどうかを知りたいとします。彼らは100人を対象に、この法律を支持するかどうかを調査した。次に、マーケティング ビデオを 100 人全員に見せ、ビデオの終了後に再度アンケートを実施します。

次の表は、ビデオを見る前と後でこの法律を支持した人の合計数を示しています。

マーケティング前のビデオ
マーケティング後のビデオ サポート 我慢できない
サポート 30 40
我慢できない 12 18

ビデオを見る前と後でその法律を支持した人の割合に統計的に有意な差があるかどうかを判断するには、マクネマー検定を実行できます。

ステップ 1: データを作成します。

まず、ラスター形式でデータセットを作成します。

 #create data
data <- matrix(c(30, 12, 40, 18), nrow = 2,
    dimnames = list("After Video" = c("Support", "Do Not Support"),
                    "Before Video" = c("Support", "Do Not Support")))

#view data
data

                Before Video
After Video Support Do Not Support
  Bracket 30 40
  Do Not Support 12 18

ステップ 2: マクネマー テストを実行します。

次に、次の構文を使用してマクネマー テストを実行します。

mcnemar.test(x,y=NULL,correct=TRUE)

金:

  • x : 行列形式の 2 次元分割表、または因子オブジェクトのいずれか。
  • y : 因子オブジェクト。 x が行列の場合は無視されます。
  • correct : TRUE = テスト統計を計算するときに連続性補正を適用します。 FALSE = 連続性補正を適用しません。

一般に、テーブル内の一部のカウントが低い場合には、連続性補正を適用する必要があります。通常、この補正はセルの数が 5 未満の場合に適用されます。

違いを示すために、連続性補正ありとなしでマクネマー テストを実行します。

 #Perform McNemar's Test with continuity correction
mcnemar.test(data)

	McNemar's Chi-squared test with continuity correction

data:data
McNemar's chi-squared = 14.019, df = 1, p-value = 0.000181

#Perform McNemar's Test without continuity correction
mcnemar.test(data, correct=FALSE) 

	McNemar's Chi-squared test

data:data
McNemar's chi-squared = 15.077, df = 1, p-value = 0.0001032

どちらの場合も、検定の p 値は 0.05 未満であるため、帰無仮説は棄却され、マーケティング ビデオを視聴する前と後でこの法則を支持した人の割合は統計的に異なると結論付けることになります。

コメントを追加する

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