Sei sulla pagina 1di 5

26/02/2019 Os testes chi-quadrado | R blogs / lang

R blogs / lang
Articles about R, in your own language

Os testes chi-quadrado
by Walmes Zeviani • July 4, 2011

This post was kindly contributed by Ridículas - go there to comment and to read the full post.

Gráfico de barras representando as frequências absolutas das classes de aspecto de agregado


em função da profundidade de coleta. Valores dentro do gráfico são resultados do teste de
homogeneidade.

Os testes (qui-quadrado) a que me refiro são:

Teste de aderência: testa a hipótese da amostra ser proveniente de uma distribuição de probabilidade
definida em . Com essa distribuição definida em são obtidos as frequências esperadas ( );
Teste de homogeneidade: testa a hipótese de duas ou mais amostras serem provenientes de uma
mesma distribuição de probabilidades. Os valores esperados são obtidos pelo produto da linha
marginal e tamanho das amostras;
Teste de independência: testa a hipótese de que a distribuição conjunta é o produto das
distribuições marginais, o que só ocorre quando existe independência entre as variáveis aleatórias.
No caso de duas variáveis aleatórias organizadas numa tabela de dupla entrada, os valores
esperados são obtidos como produto dos valores marginais.

Nos testes chi-quadrado o que muda é só a hipótese envolvida no calculo dos valores esperados. Para os
três tipos de hipótese, a estatística do teste é

https://www.r-bloggers.com/lang/uncategorized/265 1/5
26/02/2019 Os testes chi-quadrado | R blogs / lang

sendo que sob a variável aleatória em que são os graus de liberdade.

Nesse post vou apresentar cada uma dos três tipos de teste de hipótese. Para uma melhor abordagem
teórica do teste chi-quadrado consulte os livros de estatística básica como Estatítica Básica do Bussab e
Morettin.

Embora alguns autores façam distinção entre o teste de homogeneidade e de independência, você vai
perceber que são o mesmo teste para a mesma hipótese escrita de duas formas. Veja, se há independência
entre as classificações então é esperado que os valores para a combinações sejam o produto das
probabilidades marginais, pois sob independência. Logo, se as
probabilidades na linha marginal representam os as probabilidades nas linhas de cada amostra, então há
homogeneidade. Até a próxima ridícula.

1 #-------------------------------------------------------------------------
2 # teste de aderência 1: frequencia de acidentes nos dias da semana
3 # hipótese H_0 é de as frequências são dadas por uma distribuição
4 # uniforme discreta com n=5, ou seja, p_i=5 para todo i={seg,ter,qua,qui,s
5 # dados do Bussab & Morettin - Estatística Básica - 6 edição, pg 404
6  
7 Oi <- c(seg=32, ter=40, qua=20, qui=25, sex=33) # observados
8 Ei <- sum(Oi)*1/length(Oi)                      # esperados sob H_0
9 X2 <- sum((Oi-Ei)^2/Ei)                         # estatística do teste
10 nu <- length(Oi)-1                              # graus de liberdade
11 pchisq(X2, df=nu, lower.tail=FALSE)             # valor-p do teste
12  
13 #-------------------------------------------------------------------------
14 # usando a função chis.test()
15  
16 chisq.test(Oi)
17  
18 #-------------------------------------------------------------------------
19 # teste de aderência 2: número de plantas por m² em uma floresta
20 # hipótese H_0 é de o número de plantas observados é Poisson(lambda)
21 # lambda precisa ser estimado e isso diminui um grau de liberdade
22  
23 n <- 0:10                                       # número de plantas
24 Oi <- c(574,922,1172,917,609,324,150,64,19,4,0) # número observado
25 names(Oi) <- c(n[-11],">9")
26 lambda <- sum(Oi*n)/sum(Oi)                     # estimativa de lambda
27 pi <- dpois(n[-11], lambda=lambda)              # frequência sob H_0
28 pi <- c(pi, 1-sum(pi))
29 Ei <- sum(Oi)*pi                                # número esperado sob H_0
30 X2 <- sum((Oi-Ei)^2/Ei)                         # estatística do teste
31 nu <- length(Oi)-1-1                            # grau de liberdade
32 pchisq(X2, df=nu, lower.tail=FALSE)             # valor p do teste
33  
34 #-------------------------------------------------------------------------
35 # usando a função chis.test()
36  
37 chisq.test(Oi, p=pi)
38  
39 # os graus de liberdade não consideram a estimação de lambda
40 # prestar atenção quando usar a chisq.test() nestes casos
41  
42 #-------------------------------------------------------------------------
43 # teste de homogeneidade: testar se a distribuição do aspecto de agregados
44 # muda com a profundidade de amostragem
45 # os dados são contínuos e serão colocados em classes para aplicação do te
46 # foram usadas as classes obtidas para construir um histograma
https://www.r-bloggers.com/lang/uncategorized/265 2/5
26/02/2019 Os testes chi-quadrado | R blogs / lang

47  
48 ag <- read.table("http://www.leg.ufpr.br/~walmes/cursoR/agreg.txt",
49                  header=TRUE, sep="\t")
50 str(ag)
51 ht <- hist(ag$aspecto)
52 classes <- ht$breaks                                # classes de aspecto
53 cla <- cut(ag$asp, classes)                         # atribuição às classe
54 Oi <- table(ag$prof, cla)                           # observados
55 Ei <- outer(rowSums(Oi), colSums(Oi), "*")/sum(Oi)  # esperados sob H_0
56 X2 <- sum((Oi-Ei)^2/Ei)                             # estatística do teste
57 nu <- prod(dim(Ei)-1)                               # graus de liberdade
58 pchisq(X2, df=nu, lower.tail=FALSE) -> P; P         # valor p do teste
59  
60 #-------------------------------------------------------------------------
61 # usando a função chis.test()
62  
63 chisq.test(Oi)
64  
65 #-------------------------------------------------------------------------
66 # gráfico
67  
68 #png("f016.png", w=500, h=300)
69 par(mar=c(4.1,6.1,2.1,2.1))
70 col <- c("green3","green4")
71 barplot(Oi, beside=TRUE, horiz=TRUE, las=1, col=col,
72         xlab="Frequência absoluta")
73 mtext(side=2, text="Classe de aspecto do agregado", line=5)
74 legend("bottomright", legend=c("0 - 5 cm","5 - 20 cm"), fill=col, bty="n")
75 text(30, 3, substitute(italic(X)^2==x~~~~~~italic(valor-p)==P,
76                        list(x=round(X2,4), P=round(P,4))))
77 #dev.off()
78  
79 #-------------------------------------------------------------------------
80 # teste de independência: testar se há independência na classificação
81 # quanto ao grau de ingestão de alcool (0, <7, >7 copos por semana) e o
82 # desenvolvimento de doença cardíaca (sim, não)
83  
84 Oi <- matrix(c(146,106,29,750,590,292), byrow=TRUE, # observados
85              2, 3, dimnames=list(c("sim","não"), c(0,"<7",">7")))
86 Ei <- outer(rowSums(Oi), colSums(Oi), "*")/sum(Oi)  # esperados sob H_0
87 X2 <- sum((Oi-Ei)^2/Ei)                             # estatística do teste
88 nu <- prod(dim(Ei)-1)                               # graus de liberdade
89 pchisq(X2, df=nu, lower.tail=FALSE)                 # valor p do teste
90  
91 #-------------------------------------------------------------------------
92 # usando a função chis.test()
93  
94 chisq.test(Oi)
95  
96 #-------------------------------------------------------------------------

Tags: aderência chi-quadrado chisq.test hipótese independência outer testes

← [GoogleTechTalk] The Future of Interactive Объекты и типы данных R: матрицы →


Graphics in R

https://www.r-bloggers.com/lang/uncategorized/265 3/5
26/02/2019 Os testes chi-quadrado | R blogs / lang

LANGUAGES

Chinese
Dutch
French
German
Indonesian
Italian
Korean
Polish
portuguese
Russian
Serbian
Spanish
Uncategorized

RECENT POSTS

DALEX: which variables are really important? Ask your black box model!
L’honneur et le mérite
Toujours pas de chrysanthèmes
Rozstrzygnięcie konkursu Data Science Masters na najlepszą pracę z DS i ML
R-Lab#5: the report & R-Lab#6 ready to go!

https://www.r-bloggers.com/lang/uncategorized/265 4/5
26/02/2019 Os testes chi-quadrado | R blogs / lang

Copyright © 2018 R blogs / lang. All Rights Reserved.


The Magazine Basic Theme by bavotasan.com.

https://www.r-bloggers.com/lang/uncategorized/265 5/5

Potrebbero piacerti anche