Para esta oitava aula prática de Estatística Não Paramétrica, precisaremos dos seguintes pacotes:
require(irr) # Faz os coeficientes kappa de cohen, kappa de fleis e w de kendal
Para calcular o coeficiente kappa de cohen no
R, utilizaremos a função kappa2 do pacote
irr. A função kappa2 precisa dos
seguintes argumentos:
A função kappa2 retorna:
Imagine que em um hospital, dois médicos (Avaliador 1 e Avaliador 2) estão avaliando se um paciente tem ou não uma condição médica específica, como uma doença rara. Eles têm acesso aos mesmos exames e relatórios de diagnóstico, mas fazem suas avaliações de forma independente. Eles podem classificar cada paciente de uma das seguintes maneiras:
O objetivo aqui é medir o grau de concordância entre os dois médicos quanto à classificação dos pacientes, utilizando o coeficiente Kappa de Cohen. Esse tipo de análise é comum em diagnósticos médicos, onde a precisão na concordância entre avaliadores (como médicos ou radiologistas) é crucial para garantir a qualidade e a confiabilidade do diagnóstico.
Os dados observados foram:
| Paciente | Avaliador 1 | Avaliador 2 |
|---|---|---|
| 1 | Positivo | Positivo |
| 2 | Negativo | Positivo |
| 3 | Positivo | Negativo |
| 4 | Negativo | Negativo |
| 5 | Positivo | Positivo |
| 6 | Negativo | Negativo |
| 7 | Positivo | Positivo |
| 8 | Negativo | Positivo |
| 9 | Positivo | Positivo |
| 10 | Negativo | Negativo |
| 11 | Positivo | Negativo |
| 12 | Negativo | Negativo |
| 13 | Positivo | Positivo |
| 14 | Negativo | Negativo |
| 15 | Positivo | Positivo |
| 16 | Negativo | Negativo |
| 17 | Positivo | Negativo |
| 18 | Negativo | Positivo |
| 19 | Positivo | Positivo |
| 20 | Negativo | Negativo |
No R, os dados observados serão armazenados com
os seguintes comandos:
dados <- data.frame(
Avaliador1 = c('Positivo', 'Negativo', 'Positivo', 'Negativo', 'Positivo', 'Negativo',
'Positivo', 'Negativo', 'Positivo', 'Negativo', 'Positivo', 'Negativo',
'Positivo', 'Negativo', 'Positivo', 'Negativo', 'Positivo', 'Negativo',
'Positivo', 'Negativo'),
Avaliador2 = c('Positivo', 'Positivo', 'Negativo', 'Negativo', 'Positivo', 'Negativo',
'Positivo', 'Positivo', 'Positivo', 'Negativo', 'Negativo', 'Negativo',
'Positivo', 'Negativo', 'Positivo', 'Negativo', 'Negativo', 'Positivo',
'Positivo', 'Negativo')
)
Para investigar o valor do coeficiente Kappa de Cohen e, consequentemente, o seu teste de hipótese, tem-se o seguinte comando:
kappa_cohen <- kappa2(dados)
Observou-se um kappa de 0,4, indicando concordância fraca. Logo, para um valor-p de 0,07, não rejeitamos a hipótese nula ao nível de 5% de significância. Ou seja, há evidências de que as classificações dos médicos são devidas ao acaso. Em outras palavras, os avaliadores estão classificando os casos de maneira quase aleatória, ou seja, a concordância observada pode ser explicada pelo acaso e não por uma real semelhança nas avaliações.
Dois professores, Jorge e Marcelo, estão avaliando a redação de 15 estudantes em um concurso de escrita. Cada redação é classificada em três categorias de qualidade: “Excelente”, “Bom”, ou “Regular”. O objetivo é medir o nível de concordância entre os dois professores em suas avaliações e verificar se a concordância observada vai além do esperado ao acaso, utilizando o coeficiente Kappa de Cohen. Os dados observados foram:
| Estudante | Jorge | Marcelo |
|---|---|---|
| 1 | Excelente | Excelente |
| 2 | Bom | Regular |
| 3 | Regular | Regular |
| 4 | Bom | Bom |
| 5 | Excelente | Bom |
| 6 | Regular | Regular |
| 7 | Excelente | Excelente |
| 8 | Bom | Excelente |
| 9 | Regular | Regular |
| 10 | Excelente | Excelente |
| 11 | Excelente | Bom |
| 12 | Bom | Bom |
| 13 | Regular | Regular |
| 14 | Regular | Bom |
| 15 | Bom | Bom |
No R, eles são armazenados com os seguintes
comandos:
dados <- data.frame(
Jorge = c("Excelente", "Bom", "Regular", "Bom", "Excelente",
"Regular", "Excelente", "Bom", "Regular", "Excelente",
"Excelente", "Bom", "Regular", "Regular", "Bom"),
Marcelo = c("Excelente", "Regular", "Regular", "Bom", "Bom",
"Regular", "Excelente", "Excelente", "Regular", "Excelente",
"Bom", "Bom", "Regular", "Bom", "Bom")
)
Use o coeficiente Kappa de Cohen para investigar a concordância entre os dois professores.
Para calcular o coeficiente kappa de fleiss no
R, utilizaremos a função kappam.fleiss do
pacote irr. A função kappam.fleiss
precisa dos seguintes argumentos:
A função kappam.fleiss retorna:
Suponha que um grupo de 5 avaliadores tenha sido encarregado de avaliar a qualidade de 30 produtos, atribuindo uma classificação de qualidade em uma das três categorias: Aprovado, Rejeitado ou Indefinido. O objetivo é medir a concordância entre os avaliadores utilizando o índice de Kappa de Fleiss.
Os dados observados foram:
| Produto | Avaliador 1 | Avaliador 2 | Avaliador 3 | Avaliador 4 | Avaliador 5 |
|---|---|---|---|---|---|
| 1 | Aprovado | Rejeitado | Aprovado | Aprovado | Rejeitado |
| 2 | Rejeitado | Rejeitado | Aprovado | Indefinido | Aprovado |
| 3 | Indefinido | Aprovado | Aprovado | Indefinido | Rejeitado |
| 4 | Aprovado | Aprovado | Aprovado | Aprovado | Aprovado |
| 5 | Rejeitado | Indefinido | Rejeitado | Rejeitado | Indefinido |
| 6 | Indefinido | Indefinido | Indefinido | Rejeitado | Indefinido |
| 7 | Aprovado | Aprovado | Rejeitado | Aprovado | Indefinido |
| 8 | Rejeitado | Rejeitado | Indefinido | Indefinido | Rejeitado |
| 9 | Aprovado | Aprovado | Aprovado | Indefinido | Aprovado |
| 10 | Indefinido | Rejeitado | Indefinido | Indefinido | Indefinido |
| 11 | Aprovado | Aprovado | Aprovado | Aprovado | Aprovado |
| 12 | Rejeitado | Indefinido | Rejeitado | Aprovado | Rejeitado |
| 13 | Aprovado | Aprovado | Aprovado | Aprovado | Aprovado |
| 14 | Rejeitado | Rejeitado | Indefinido | Rejeitado | Rejeitado |
| 15 | Aprovado | Aprovado | Aprovado | Aprovado | Aprovado |
No R, os dados observados serão
armazenados com os seguintes comandos:
dados <- data.frame(
Avaliador1 = c("Aprovado", "Rejeitado", "Indefinido", "Aprovado", "Rejeitado", "Indefinido",
"Aprovado", "Rejeitado", "Aprovado", "Indefinido", "Aprovado", "Rejeitado",
"Aprovado", "Rejeitado", "Aprovado"),
Avaliador2 = c("Rejeitado", "Rejeitado", "Aprovado", "Aprovado", "Indefinido", "Indefinido",
"Aprovado", "Rejeitado", "Aprovado", "Rejeitado", "Aprovado", "Indefinido",
"Aprovado", "Rejeitado", "Aprovado"),
Avaliador3 = c("Aprovado", "Aprovado", "Aprovado", "Aprovado", "Rejeitado", "Indefinido",
"Rejeitado", "Indefinido", "Aprovado", "Indefinido", "Aprovado", "Rejeitado",
"Aprovado", "Aprovado", "Rejeitado"),
Avaliador4 = c("Aprovado", "Indefinido", "Indefinido", "Aprovado", "Rejeitado", "Rejeitado",
"Rejeitado", "Indefinido", "Aprovado", "Indefinido", "Aprovado", "Indefinido",
"Aprovado", "Indefinido", "Indefinido"),
Avaliador5 = c("Rejeitado", "Aprovado", "Rejeitado", "Aprovado", "Indefinido", "Indefinido",
"Indefinido", "Rejeitado", "Aprovado", "Indefinido", "Aprovado", "Rejeitado",
"Aprovado", "Indefinido", "Aprovado")
)
Para investigar o valor do coeficiente Kappa de Fleiss e, consequentemente, o seu teste de hipótese, tem-se o seguinte comando:
kappa_fleiss <- kappam.fleiss(dados)
kappa_fleiss
## Fleiss' Kappa for m Raters
##
## Subjects = 15
## Raters = 5
## Kappa = 0.271
##
## z = 4.66
## p-value = 3.23e-06
Logo, o kappa estimado foi de 0,271 o que apresenta uma concordância leve e foi significativa, ao nível de 5%.
Considere a situação em que 5 avaliadores classificaram 10 filmes em três categorias: “Bom”, “Médio” e “Ruim”. O objetivo é medir o grau de concordância entre esses avaliadores, considerando que cada avaliador pode atribuir uma das três classificações a cada filme. Utilizaremos o coeficiente Kappa de Fleiss para este caso. Os dados são:
| Filme | Avaliador 1 | Avaliador 2 | Avaliador 3 | Avaliador 4 | Avaliador 5 |
|---|---|---|---|---|---|
| Filme 1 | Bom | Bom | Médio | Ruim | Bom |
| Filme 2 | Médio | Bom | Bom | Médio | Ruim |
| Filme 3 | Ruim | Ruim | Ruim | Médio | Bom |
| Filme 4 | Bom | Bom | Bom | Bom | Médio |
| Filme 5 | Médio | Médio | Bom | Bom | Ruim |
| Filme 6 | Bom | Ruim | Médio | Bom | Bom |
| Filme 7 | Médio | Médio | Médio | Ruim | Bom |
| Filme 8 | Bom | Bom | Bom | Bom | Bom |
| Filme 9 | Ruim | Ruim | Ruim | Médio | Ruim |
| Filme 10 | Bom | Médio | Médio | Bom | Médio |
No R,
dados <- data.frame(
Avaliador1 = c("Bom", "Médio", "Ruim", "Bom", "Médio", "Bom", "Médio", "Bom", "Ruim", "Bom"),
Avaliador2 = c("Bom", "Bom", "Ruim", "Bom", "Médio", "Ruim", "Médio", "Bom", "Ruim", "Médio"),
Avaliador3 = c("Médio", "Bom", "Ruim", "Bom", "Bom", "Médio", "Médio", "Bom", "Ruim", "Médio"),
Avaliador4 = c("Ruim", "Médio", "Médio", "Bom", "Bom", "Bom", "Ruim", "Bom", "Médio", "Bom"),
Avaliador5 = c("Bom", "Ruim", "Bom", "Médio", "Ruim", "Bom", "Bom", "Bom", "Ruim", "Médio")
)
Para calcular o coeficiente W de kendall no
R, utilizaremos a função kendall do pacote
irr. A função kendall precisa dos
seguintes argumentos:
A função kendall retorna:
Suponha que um grupo de 5 avaliadores tenha sido encarregado de avaliar a qualidade de 30 produtos, atribuindo uma classificação de qualidade em uma das três categorias: Aprovado, Rejeitado ou Indefinido. O objetivo é medir a concordância entre os avaliadores utilizando o índice de Kappa de Fleiss.
Os dados observados foram:
| Degustador 1 | Degustador 2 | Degustador 3 | Degustador 4 | |
|---|---|---|---|---|
| Café A | 1 | 2 | 1 | 3 |
| Café B | 2 | 1 | 3 | 2 |
| Café C | 3 | 3 | 2 | 1 |
| Café D | 4 | 5 | 4 | 4 |
| Café E | 5 | 4 | 5 | 5 |
No R, os dados observados serão armazenados com
os seguintes comandos:
dados <- data.frame(
Degustador1 = c(1, 2, 3, 4, 5),
Degustador2 = c(2, 1, 3, 5, 4),
Degustador3 = c(1, 3, 2, 4, 5),
Degustador4 = c(3, 2, 1, 4, 5)
)
Para investigar o valor do coeficiente W de Kendall e, consequentemente, o seu teste de hipótese, tem-se o seguinte comando:
kendall <- kendall(dados)
kendall
## Kendall's coefficient of concordance W
##
## Subjects = 5
## Raters = 4
## W = 0.775
##
## Chisq(4) = 12.4
## p-value = 0.0146
Observamos um coeficiente W de Kendall alto de 0,77, indicando grande concordância. Essa concordância foi significativa, com um valor-p de 0,0146.
Quatro membros de uma comissão avaliadora (A, B, C e D) classificaram sete candidatos (C1, C2, C3, C4, C5, C6, C7) com base em critérios como desempenho acadêmico, projetos apresentados e potencial futuro. Cada avaliador atribuiu uma nota de 1 (melhor candidato) a 7 (pior candidato). O objetivo é calcular o W de Kendall para avaliar o grau de concordância entre os membros da comissão. Os dados observados foram:
| Candidato | Avaliador A | Avaliador B | Avaliador C | Avaliador D |
|---|---|---|---|---|
| C1 | 1 | 2 | 3 | 2 |
| C2 | 3 | 1 | 2 | 3 |
| C3 | 2 | 3 | 1 | 1 |
| C4 | 7 | 7 | 6 | 7 |
| C5 | 5 | 4 | 4 | 5 |
| C6 | 4 | 5 | 5 | 4 |
| C7 | 6 | 6 | 7 | 6 |
No R:
dados <- data.frame(
Avaliador_A = c(1, 3, 2, 7, 5, 4, 6),
Avaliador_B = c(2, 1, 3, 7, 4, 5, 6),
Avaliador_C = c(3, 2, 1, 6, 4, 5, 7),
Avaliador_D = c(2, 3, 1, 7, 5, 4, 6)
)