Hoe de mcnemar-test uit te voeren in r
De McNemar-test wordt gebruikt om te bepalen of er een statistisch significant verschil is in verhoudingen tussen gepaarde gegevens.
In deze tutorial wordt uitgelegd hoe u de McNemar-test uitvoert in R.
Voorbeeld: McNemar-test in R
Stel dat onderzoekers willen weten of een bepaalde marketingvideo de mening van mensen over een bepaalde wet kan veranderen. Ze ondervragen 100 mensen om erachter te komen of ze de wet wel of niet steunen. Vervolgens laten ze de marketingvideo aan alle 100 mensen zien en ondervragen ze opnieuw nadat de video is afgelopen.
De volgende tabel toont het totale aantal mensen dat de wet steunde voor en na het bekijken van de video:
Video vóór marketing | ||
---|---|---|
Video na marketing | Steun | Kan niet uitstaan |
Steun | 30 | 40 |
Kan niet uitstaan | 12 | 18 |
Om te bepalen of er een statistisch significant verschil was in het aandeel mensen dat de wet steunde voor en na het bekijken van de video, kunnen we de McNemar-test uitvoeren.
Stap 1: Creëer de gegevens.
Maak eerst de gegevensset in rastervorm.
#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
Stap 2: Voer de McNemar-test uit.
Voer vervolgens de McNemar-test uit met behulp van de volgende syntaxis:
mcnemar.test(x,y=NULL,correct=TRUE)
Goud:
- x : ofwel een tweedimensionale kruistabel in matrixvorm, ofwel een factorobject.
- y : een factorobject; genegeerd als x een matrix is.
- correct : TRUE = continuïteitscorrectie toepassen bij het berekenen van teststatistieken; FALSE = pas geen continuïteitscorrectie toe.
Over het algemeen moet een continuïteitscorrectie worden toegepast als sommige aantallen in de tabel laag zijn. Normaal gesproken wordt deze correctie meestal toegepast als het aantal cellen kleiner is dan 5.
We zullen de McNemar-test uitvoeren met en zonder continuïteitscorrectie, alleen om de verschillen te illustreren:
#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
In beide gevallen is de p-waarde van de test kleiner dan 0,05, dus we zouden de nulhypothese verwerpen en concluderen dat het aandeel mensen dat de wet steunde voor en na het bekijken van de marketingvideo statistisch verschillend was.