J'ai essayé de lire sur différentes sources, mais je ne sais toujours pas quel test serait le plus approprié dans mon cas. Il y a trois questions différentes que je pose à propos de mon jeu de données:
Les sujets sont testés pour des infections de X à différents moments. Je veux savoir si les proportions de positif pour X après sont liées à la proportion de positif pour X avant:
After |no |yes| Before|No |1157|35 | |Yes |220 |13 | results of chi-squared test: Chi^2 = 4.183 d.f. = 1 p = 0.04082 results of McNemar's test: Chi^2 = 134.2 d.f. = 1 p = 4.901e-31
D'après ma compréhension, comme les données sont des mesures répétées, je dois utiliser le test de McNemar, qui teste si la proportion de positifs pour X a changé.
Mais mes questions semblent nécessiter le test du chi carré - tester si la proportion de positif pour X après est liée à la proportion de positif pour X avant.
Je ne suis même pas sûr de bien comprendre la différence entre le test de McNemar et le chi-carré. Quel serait le bon test si ma question était: "La proportion de sujets infectés par X après est-elle différente d'avant?"
Un cas similaire, mais où au lieu d'avant et après, je mesure deux infections différentes à un moment donné:
Y |no |yes| X|No |1157|35 | |Yes |220 |13 |
Quel test serait ici si la question était "Est-ce que des proportions plus élevées d'une infection se rapportent à des proportions plus élevées de Y"?
Si ma question était «L'infection Y au temps t2 est-elle liée à l'infection X au temps t1?», Quel test serait approprié?
Y at t2 |no |yes| X at t1|No |1157|35 | |Yes |220 |13 |
J'utilisais le test de McNemar dans tous ces cas, mais j'ai des doutes si c'est le bon test pour répondre à mes questions. J'utilise R. Puis-je utiliser un binôme à la glm
place? Serait-ce analogue au test du chi carré?
Réponses:
Il est très regrettable que le test de McNemar soit si difficile à comprendre pour les gens. Je remarque même qu'en haut de sa page Wikipédia, il indique que l'explication sur la page est difficile à comprendre pour les gens. L'explication courte typique du test de McNemar est soit qu'il s'agit d'un «test chi carré intra-sujets», soit qu'il s'agit d'un «test de l'homogénéité marginale d'un tableau de contingence». Je ne trouve aucun de ces éléments très utile. Premièrement, il n'est pas clair ce que l'on entend par `` chi carré intra-sujets '', car vous mesurez toujours vos sujets deux fois (une fois sur chaque variable) et essayez de déterminer la relation entre ces variables. De plus, «homogénéité marginale» (Tragiquement, même cette réponse peut prêter à confusion. Si c'est le cas, il peut être utile de lire ma deuxième tentative ci-dessous.)
Voyons si nous pouvons travailler à travers un processus de raisonnement sur votre meilleur exemple pour voir si nous pouvons comprendre si (et si oui, pourquoi) le test de McNemar est approprié. Vous avez mis:
Il s'agit d'un tableau de contingence, il implique donc une analyse du chi carré. De plus, vous voulez comprendre la relation entre et A f t e r , et le test du chi carré vérifie une relation entre les variables, donc à première vue, il semble que le test du chi carré doit être l'analyse qui répond à votre question.B e fo r e A ft e r
Cependant, il convient de souligner que nous pouvons également présenter ces données comme suit:
Quand vous regardez les données de cette façon, vous pourriez penser que vous pourriez faire un vieux régulier -test. Mais un t- test n'est pas tout à fait correct. Il y a deux problèmes: Premièrement, parce que chaque ligne répertorie les données mesurées à partir du même sujet, nous ne voudrions pas faire un test t entre sujets , nous voudrions faire un test t entre sujets . Deuxièmement, étant donné que ces données sont distribuées sous forme de binôme , la variance est fonction de la moyenne. Cela signifie qu'il n'y a pas d'incertitude supplémentaire à craindre une fois que la moyenne de l'échantillon a été estimée (c'est-à-dire que vous n'avez pas à estimer la variance par la suite), vous n'avez donc pas à vous référer à la distribution t , vous pouvez utiliser le zt t t t t z Distribution. (Pour en savoir plus, il peut être utile de lire ma réponse ici: Le -test par rapport au χ 2 testsz χ2 ). Par conséquent, nous aurions besoin d' un intra-sujets -test. Autrement dit, nous avons besoin d'un test intra-sujets d'égalité des proportions. z
Nous avons vu qu'il y a deux façons différentes de penser et d'analyser ces données (motivées par deux façons différentes de regarder les données). Nous devons donc décider de la façon dont nous devons utiliser. Le test du chi carré évalue si et A f t e r sont indépendants. Autrement dit, les personnes qui ont été malades auparavant sont-elles plus susceptibles de l'être ensuite que les personnes qui n'ont jamais été malades. Il est extrêmement difficile de voir comment cela ne serait pas le cas étant donné que ces mesures sont évaluées sur les mêmes sujets. Si vous obteniez un résultat non significatif (comme vous le faites presque), ce serait simplement une erreur de type II. Au lieu de savoir si B e fB e fo r e A ft e r et A f t e r sont indépendants, vous voulez certainement savoir si le traitement fonctionne (une question chi-carré ne répond pas). Ceci est très similaire à n'importe quel nombre d'études de traitement vs études de contrôle où vous voulez voir si les moyennes sont égales, sauf que dans ce cas, vos mesures sont oui / non et elles sont intra-sujets. Considérons un t plus typiqueB e fo r e A ft e r t - situation de test avec pression artérielle mesurée avant et après un traitement. Ceux dont le pb était au-dessus de la moyenne de votre échantillon au préalable auront presque certainement tendance à être parmi les pb les plus élevés par la suite, mais vous ne voulez pas connaître la cohérence des classements, vous voulez savoir si le traitement a conduit à un changement du pb moyen . Votre situation ici est directement analogue. Plus précisément, vous souhaitez exécuter un test intérieur des sujets de l'égalité des proportions. C'est le test de McNemar.z
Donc, après avoir réalisé que nous voulons effectuer le test de McNemar, comment cela fonctionne-t-il? Exécuter un test entre sujets est facile, mais comment exécuter une version intra-sujets? La clé pour comprendre comment effectuer un test de proportions intra-sujets est d'examiner le tableau de contingence, qui décompose les proportions:z
Il est évidentleBeforeproportions sont les totaux de ligne divisé par le total général, et leAfterproportions sont les totaux des colonnes divisé partotal global. Lorsque nous regardons le tableau de contingence, nous pouvons voir que ce sont, par exemple:Avant la proportion oui=220+13
Ce qui est intéressant à noter ici, c'est que13observations étaient oui avant et après. Ils se retrouvent dans les deux proportions, mais en raison de leur présence dans les deux calculs, ils n'ajoutent aucune information distincte sur la variation de la proportion de oui. De plus, ils sont comptés deux fois, ce qui n'est pas valable. De même, le total global se retrouve dans les deux calculs et n'ajoute aucune information distincte. En décomposant les proportions, nous sommes en mesure de reconnaître que les seules informations distinctes sur les proportions avant et après des oui existent dans les220et35, ce sont donc les chiffres que nous devons analyser. C'était la perspicacité de McNemar. De plus, il s'est rendu compte que sous le nul, il s'agit d'un test binomial de220/
R
Il y a une autre discussion sur le test de McNemar, avec des extensions aux tables de contingence supérieures à 2x2, ici .
Voici une
R
démo avec vos données:Si nous ne tenions pas compte de la nature intra-sujets de vos données, nous aurions un test un peu moins puissant d'égalité des proportions:
X-squared = 133.6627
chi-squared = 134.2157
Voici les réponses à vos questions concrètes:
Cette version est plus délicate et le libellé "est-ce que des proportions plus élevées d'une infection se rapportent à des proportions plus élevées de Y" est ambigu. Il y a deux questions possibles:
Comme il s'agit encore une fois de la même infection, ils seront bien sûr liés. Je suppose que cette version n'est pas avant et après un traitement, mais juste à un moment ultérieur. Ainsi, vous demandez si les taux d'infection de fond changent de manière organique, ce qui est encore une fois une question parfaitement raisonnable. Quoi qu'il en soit, l'analyse correcte est le test de McNemar.Edit: Il semblerait que j'ai mal interprété votre troisième question, peut-être à cause d'une faute de frappe. Je l'interprète maintenant comme deux infections différentes à deux moments différents. Selon cette interprétation, le test du chi carré serait approprié.
la source
Eh bien, il semble que j'aie fait un hachage de cela. Permettez-moi d'essayer de l'expliquer à nouveau, d'une manière différente et nous verrons si cela pourrait aider à clarifier les choses.
La manière traditionnelle d'expliquer le test de McNemar par rapport au test du chi carré est de demander si les données sont "appariées" et de recommander le test de McNemar si les données sont appariées et le test du chi carré si les données sont "non appariées". J'ai trouvé que cela conduit à beaucoup de confusion (ce fil étant un exemple!). Au lieu de cela, j'ai trouvé qu'il est très utile de se concentrer sur la question que vous essayez de poser et d'utiliser le test qui correspond à votre question. Pour rendre cela plus concret, regardons un scénario composé:
Voici les données:
À ce stade, il est important de comprendre quelle question nous voulons poser à nos données. Il y a trois questions différentes que nous pourrions poser ici:
BP
etNationality
sont associées ou indépendantes;Enfin, on peut se demander si la proportion de statisticiens souffrant d'hypertension artérielle est égale à la proportion de statisticiens américains à qui nous avons parlé. Il s'agit des proportions marginales du tableau. Ceux-ci ne sont pas imprimés par défaut dans R, mais nous pouvons les obtenir ainsi (notez que, dans ce cas, ils sont exactement les mêmes):
Comme je l'ai dit, l'approche traditionnelle, discutée dans de nombreux manuels, consiste à déterminer le test à utiliser en fonction du «jumelage» ou non des données. Mais c'est très déroutant, ce tableau de contingence est-il «jumelé»? Si nous comparons la proportion d'hypertension artérielle entre les statisticiens américains et britanniques, vous comparez deux proportions (bien que de la même variable) mesurées sur différents groupes de personnes. D'un autre côté, si vous voulez comparer la proportion d'hypertension artérielle à la proportion américaine, vous comparez deux proportions (bien que de variables différentes) mesurées sur le même ensemble de personnes. Ces données sont à la fois"appariés" et "non appariés" en même temps (bien qu'en ce qui concerne les différents aspects des données). Cela crée de la confusion. Pour essayer d'éviter cette confusion, je soutiens que vous devriez réfléchir à la question que vous posez. Plus précisément, si vous voulez savoir:
Quelqu'un pourrait être en désaccord avec moi ici, faisant valoir que parce que le tableau de contingence n'est pas "apparié", le test de McNemar ne peut pas être utilisé pour tester l'égalité des proportions marginales et que le test du chi carré devrait être utilisé à la place. Puisque c'est le point de discorde, essayons les deux pour voir si les résultats ont du sens:
Essayons un autre exemple:
Cette fois, le test du chi carré donne une valeur de p de 1, ce qui signifie que les proportions marginales sont aussi égales qu'elles peuvent l'être. Mais nous avons vu que les proportions marginales ne sont évidemment pas égales, ce résultat n'a donc aucun sens à la lumière de nos données. D'un autre côté, le test de McNemar donne une valeur de p d'environ 0. En d'autres termes, il est extrêmement peu probable d'obtenir des données avec des proportions marginales aussi éloignées de l'égalité que celles-ci, si elles sont vraiment égales dans la population. Puisque nos proportions marginales observées sont loin d'être égales, ce résultat est logique.
Le fait que le test du chi carré donne des résultats qui n'ont aucun sens étant donné nos données suggère qu'il y a quelque chose de mal à utiliser le test du chi carré ici. Bien sûr, le fait que le test de McNemar ait fourni des résultats raisonnables ne prouve pas qu'il est valide, il s'agit peut-être simplement d'une coïncidence, mais le test du chi carré est clairement faux.
Voyons si nous pouvons étudier l'argument pour expliquer pourquoi le test de McNemar pourrait être le bon. J'utiliserai un troisième jeu de données:
(Pour
prop.test()
tester les proportions marginales, j'ai dû saisir manuellement le nombre de `` succès '' et le nombre total de `` tests '', mais vous pouvez voir sur la dernière ligne de la sortie que les proportions sont correctes.) Cela suggère que il est peu probable d'obtenir des proportions marginales aussi loin de l'égalité si elles étaient réellement égales, compte tenu de la quantité de données dont nous disposons.Ce test est-il valide? Il y a deux problèmes ici: le test estime que nous avons 800 données, alors que nous n'en avons en réalité que 400. Ce test ne prend pas non plus en compte que ces deux proportions ne sont pas indépendantes, en ce sens qu'elles ont été mesurées sur les mêmes personnes.
Dans cette version, seules les observations informatives sont utilisées et elles ne sont pas comptées deux fois. La valeur de p est ici beaucoup plus petite, 0,000000001588, ce qui est souvent le cas lorsque la dépendance dans les données est prise en compte. Autrement dit, ce test est plus puissant que le test z de différence de proportions. Nous pouvons en outre voir que la version ci-dessus est essentiellement la même que le test de McNemar:
Si la non-identité est source de confusion, le test de McNemar typiquement et dans R, évalue le résultat au carré et le compare à la distribution du chi carré, qui n'est pas un test exact comme le binôme ci-dessus:
Ainsi, lorsque vous souhaitez vérifier que les proportions marginales d'une table de contingence sont égales, le test de McNemar (ou le test binomial exact calculé manuellement) est correct. Il utilise uniquement les informations pertinentes sans utiliser illégalement deux fois les données. Il ne s'agit pas simplement de produire des résultats qui donnent un sens aux données.
Je continue de croire qu'essayer de déterminer si une table de contingence est «jumelée» est inutile. Je suggère d'utiliser le test qui correspond à la question que vous posez sur les données.
la source
Par exemple, vous pourriez avoir un échantillon de 20 statisticiens des États-Unis et un échantillon indépendant distinct de 37 statisticiens du Royaume-Uni, et avoir une mesure pour savoir si ces statisticiens sont hypertendus ou normotendus. Votre hypothèse nulle est que les statisticiens britanniques et américains ont la même probabilité sous-jacente d'être hypertendu (c'est-à-dire que savoir si l'on est des États-Unis ou du Royaume-Uni ne dit rien sur la probabilité d'hypertension). Bien sûr, il est possible que vous ayez la même taille d'échantillon dans chaque groupe, mais cela ne change pas le fait que les échantillons soient indépendants (c'est-à-dire non appariés ).
Données binaires dans des échantillons appariésχ2
Dans ce cas, vous utiliseriez McNemar's
Par exemple, vous pourriez avoir des données d'études cas-témoins appariées individuellement échantillonnées à partir d'une conférence internationale de statisticiens, où 30 statisticiens souffrant d' hypertension (cas) et 30 statisticiens sans hypertension (témoins; qui sont individuellement appariés par âge, sexe, IMC et statut de fumeur cas particuliers), sont évalués rétrospectivement pour la résidence professionnelle au Royaume-Uni par rapport à la résidence ailleurs. La valeur nulle est que la probabilité de résider au Royaume-Uni parmi les cas est la même que la probabilité de résider au Royaume-Uni en tant que contrôle (c'est-à-dire que connaître son statut d'hypertension ne dit rien de son histoire de résidence au Royaume-Uni).
Anto, dans votre exemple, vos données sont appariées (même variable mesurée deux fois dans le même sujet) et donc le test de McNemar est le choix approprié de test pour l'association.
[Gung et moi étions en désaccord pendant un certain temps sur une réponse antérieure.]
Références citées
"En supposant que nous sommes toujours intéressés à comparer les proportions, que pouvons-nous faire si nos données sont couplées plutôt qu'indépendantes? ... Dans cette situation, nous utilisons le test de McNemar." - Pagano et Gauvreau, Principles of Biostatistics , 2nd édition, page 349. [Je souligne ]
"L'expression est mieux connue sous le nom de statistique de test de paires appariées de McNemar (McNemar, 1949), et a été un pilier de l' analyse de paires appariées ." - Rothman, Greenland, & Lash.Épidémiologie moderne , page 286. [ Je souligne ]
chez les mêmes individus Nous développerons une procédure pour analyser de telles expériences, le test de Mcnemar pour les changements , dans le cadre d'une telle étude. "- Glanz, Primer of Biostatisticsχ2 test du aux données appariées à la page 201.]
"Pour les données cas-témoins appariées avec un contrôle par cas , l'analyse résultante est simple, et le test statistique approprié est le test chi-carré de McNemar ... notez que pour le calcul du rapport de cotes et de la statistique, les seuls contributeurs sont les paires dont l'exposition est disparate , c'est-à-dire les paires où le cas a été exposé mais le contrôle ne l'a pas été, et celles où le contrôle a été exposé mais le cas ne l'a pas été. "- Elwood. Évaluation critique des études épidémiologiques et des essais cliniques , 1re édition, pages 189–190. [ Italiques ajoutés ]
la source
Ma compréhension du test de McNemar est la suivante: il est utilisé pour voir si une intervention a fait une différence significative dans un résultat binaire. Dans votre exemple, un groupe de sujets est vérifié pour l'infection et la réponse est enregistrée comme oui ou non. Tous les sujets reçoivent ensuite une intervention, par exemple un antibiotique. Ils sont ensuite vérifiés à nouveau pour l'infection et la réponse est enregistrée comme oui / non à nouveau. Les (paires de) réponses peuvent être mises dans le tableau de contigence:
Et le test de McNemar serait approprié pour cela.
Il ressort clairement du tableau que beaucoup plus sont passés de «oui» à «non» (220 / (220 + 13) ou 94,4%) que de «non» à «oui» (35 / (1157 + 35) ou 2,9 %). Compte tenu de ces proportions, la valeur P de McNemar (4.901e-31) semble plus correcte que la valeur P chi carré (0.04082).
Si le tableau de contigence représente 2 infections différentes (question 2), alors le chi carré serait plus approprié.
Votre troisième question est ambiguë: vous énoncez d'abord la relation entre Y à t2 et Y à t1 mais dans le tableau, vous écrivez «X» à t1 vs Y à t2. Y à t2 vs Y à t1 est le même que votre première question et donc le test de McNemar est nécessaire, tandis que X à t1 et Y à t2 indiquent que différents événements sont comparés et donc le chi carré sera plus approprié.
Edit: Comme mentionné par Alexis dans le commentaire, les données cas-témoins appariées sont également analysées par le test de McNemar. Par exemple, 1425 patients cancéreux sont recrutés pour une étude et pour chaque patient un contrôle apparié est également recruté. Tous ces (1425 * 2) sont vérifiés pour l'infection. Les résultats de chaque paire peuvent être montrés par un tableau similaire:
Plus clairement:
Cela montre qu'il est beaucoup plus fréquent que les patients cancéreux soient infectés et non contrôlés, plutôt que l'inverse. Son importance peut être testée par le test de McNemar.
Si ces patients et contrôles n'étaient pas appariés et indépendants, on ne peut que faire le tableau suivant et faire un test chisquare:
Plus clairement:
Notez que ces nombres sont identiques aux marges du premier tableau:
Cela doit être la raison de l'utilisation de termes comme «fréquences marginales» et «homogénéité marginale» dans le test de McNemar.
Fait intéressant, la fonction addmargins peut également aider à décider quel test utiliser. Si le total général est la moitié du nombre de sujets observés (indiquant que l'appariement a été effectué), le test de McNemar est applicable, sinon le test chisquare est approprié:
Les codes R des tableaux ci-dessus sont ceux des réponses ci-dessus:
Le pseudocode suivant peut également aider à connaître la différence:
Modifier:
mid-p
la variation du test de McNemar ( https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3716987/ ) est intéressante. Il compareb
etc
du tableau de contingence, c'est-à-dire le nombre qui est passé de oui à non et le nombre qui est passé de non à oui (en ignorant le nombre de ceux qui sont restés oui ou non pendant l'étude). Il peut être effectué à l'aide du test binomial en python, comme indiqué sur https://gist.github.com/kylebgorman/c8b3fb31c1552ecbaafbIl pourrait être équivalent à
binom.test(b, b+c, 0.5)
car dans un changement aléatoire, on s'attendraitb
à être égal àc
.la source