Deixe-me (a) explicar primeiro a idéia subjacente, e não a mecânica - elas se tornam mais óbvias em retrospecto. Então (b) falarei sobre o qui-quadrado (e se é apropriado - pode não ser!), E então (c) falarei sobre como fazê-lo em R.
(a) Sob o nulo, as populações são as mesmas. Imagine que você coloque suas duas coortes em um grande conjunto de dados, mas adicione uma coluna que contém os rótulos da coorte. Então, sob o valor nulo, o rótulo da coorte é efetivamente apenas um rótulo aleatório que não informa mais sobre a distribuição da qual a observação veio.
Sob a alternativa, é claro, os rótulos da coorte são importantes - saber que a etiqueta da coorte lhe diz mais do que não saber, porque as distribuições sob as duas etiquetas são diferentes.
(Isso sugere imediatamente algum tipo de teste de permutação / teste de randomização, onde uma estatística - uma sensível à alternativa - calculada na amostra é comparada com a distribuição da mesma estatística com os rótulos de coorte atribuídos aleatoriamente às linhas. Se você fez tudo possíveis reatribuições é um teste de permutação; se você apenas as provar, é um teste de randomização.)
(b) Então agora, como fazer um qui-quadrado?
Você calcula os valores esperados sob o valor nulo. Como os rótulos da coorte não importam sob nulo, você calcula o número esperado em cada célula com base na distribuição geral:
Status
A B ... E ... G ... Total
Cohort 1: 10 15 18 84
Cohort 2: 9 7 25 78
Total: 19 22 ... 43 ... 162
Portanto, se a distribuição fosse a mesma, não haveria associação entre coorte e status e (condicional nos totais da linha e da coluna) o número esperado na célula é total da linha i coluna-total-j / total-total×( i , j )×
Então você acaba de fazer um teste qui-quadrado de independência .
CONTUDO!
Se os rótulos de status formarem uma categoria ordenada , esse teste do qui-quadrado está descartando muita informação - ele terá baixo poder contra alternativas interessantes (como uma ligeira mudança para categorias mais altas ou mais baixas). Nessa situação, você deve fazer algo mais adequado - isto é, que leve em consideração esse pedido. Existem muitas opções.
-
(c) Agora, sobre como fazê-lo no R - depende de como seus dados estão atualmente configurados no R - seria realmente útil ter um exemplo reproduzível como um subconjunto dos seus dados!
Suponho que você o tenha em um quadro de dados com duas colunas, uma com o status (um fator) e outra com a coorte (um segundo fator).
Igual a:
status cohort
1 B Cohort1
2 B Cohort1
3 D Cohort1
4 B Cohort1
5 C Cohort1
6 D Cohort1
.
.
.
25 G Cohort2
26 E Cohort2
27 E Cohort2
28 D Cohort2
29 C Cohort2
30 G Cohort2
Então, se esse fosse um quadro de dados chamado, statusresults
você obteria uma tabela como a que fiz anteriormente:
> with(statusresults,table(cohort,status))
status
cohort A B C D E F G
Cohort1 2 6 7 3 0 0 0
Cohort2 0 0 2 2 4 1 3
E para o teste do chisquare, você deve:
> with(statusresults, chisq.test(status, cohort))
Pearson's Chi-squared test
data: status and cohort
X-squared = 18.5185, df = 6, p-value = 0.005059
Warning message:
In chisq.test(status, cohort) : Chi-squared approximation may be incorrect
(o aviso é que as contagens esperadas são baixas em algumas células, pois usei uma amostra muito pequena)
Se você ordenou categorias para status, deve fazê-lo, para que possamos discutir outras possibilidades para a análise além do chisquare simples.