Computando a confiabilidade entre avaliadores em R com número variável de classificações?

9

A Wikipedia sugere que uma maneira de analisar a confiabilidade entre avaliadores é usar um modelo de efeitos aleatórios para calcular a correlação intraclasse . O exemplo da correlação intraclasse fala sobre olhar para

σα2σα2+σϵ2

de um modelo

YEuj=μ+αEu+ϵEuj

"onde Y ij é a j- ésima observação no i- ésimo grupo, μ é uma média geral não observada, α i é um efeito aleatório não observado compartilhado por todos os valores do grupo i, e ij é um termo de ruído não observado."

Este é um modelo atraente, especialmente porque, em meus dados, nenhum avaliador avaliou todas as coisas (embora a maioria tenha avaliado mais de 20), e as coisas são classificadas um número variável de vezes (geralmente 3-4).

Pergunta # 0: "grupo i" nesse exemplo ("grupo i") é um agrupamento de itens que estão sendo classificados?

Pergunta nº 1: Se estou procurando confiabilidade entre avaliadores, não preciso de um modelo de efeitos aleatórios com dois termos, um para o avaliador e outro para a coisa classificada? Afinal, ambos têm variação possível.

Pergunta 2: Como eu melhor expressaria esse modelo em R?

Parece que esta pergunta tem uma proposta interessante:

lmer(measurement ~ 1 + (1 | subject) + (1 | site), mydata)

Eu olhei para algumas perguntas e a sintaxe do parâmetro "random" para lme ​​é opaca para mim. Eu li a página de ajuda do lme , mas a descrição para "aleatório" é incompreensível para mim sem exemplos.

Esta questão é um pouco semelhante a uma longa lista de perguntas , sendo esta a mais próxima. No entanto, a maioria não aborda R em detalhes.

dfrankow
fonte
Modelos de efeito misto e efeitos aleatórios são codificados da mesma maneira em R. Consulte ncbi.nlm.nih.gov/pmc/articles/PMC3402032 para obter mais informações sobre tuto!
noé

Respostas:

6

O modelo que você referenciou na sua pergunta é chamado de "modelo unidirecional". Ele assume que os efeitos aleatórios de linha são a única fonte sistemática de variação. No caso de confiabilidade entre avaliadores, as linhas correspondem aos objetos de medição (por exemplo, sujeitos).

Modelo unidirecional : onde μ é a média para todos os objetos, r i é o efeito de linha e w i j é o efeito residual.

xEuj=μ+rEu+WEuj
μrEuWEuj

No entanto, também existem "modelos bidirecionais". Eles assumem que há variação associada a efeitos de linha aleatórios, bem como efeitos de coluna aleatórios ou fixos. No caso de confiabilidade entre avaliadores, as colunas correspondem às fontes de medição (por exemplo, avaliadores).

Modelos bidirecionais : x i j = μ + r i + c j + e i j onde μ é a média de todos os objetos, r i é o efeito fileira, c j é o efeito coluna, r c i j é o efeito de interacção, e de e

xEuj=μ+rEu+cj+rcEuj+eEuj
xEuj=μ+rEu+cj+eEuj
μrEucjrcEuj é o efeito residual. A diferença entre esses dois modelos é a inclusão ou exclusão do efeito de interação.eEuj

xEujx¯Eu

Aqui estão as definições se você assumir um efeito de coluna aleatória:

EuCC(C,1 1)=σr2σr2+(σrc2+σe2) ou σr2σr2+σe2
EuCC(C,k)=σr2σr2+(σrc2+σe2)/k ou σr2σr2+σe2/k
EuCC(UMA,1 1)=σr2σr2+(σc2+σrc2+σe2) ou σr2σr2+(σc2+σe2)
EuCC(UMA,k)=σr2σr2+(σc2+σrc2+σe2)/k ou σr2σr2+(σc2+σe2)/k

Você também pode estimar esses valores usando quadrados médios da ANOVA:

EuCC(C,1 1)=MSR-MSEMSR+(k-1 1)MSE
EuCC(C,k)=MSR-MSEMSR
EuCC(UMA,1 1)=MSR-MSEMSR+(k-1 1)MSE+k/n(MSC-MSE)
EuCC(UMA,k)=MSR-MSEMSR+(MSC-MSE)/n

Você pode calcular esses coeficientes em R usando o pacote irr :

icc(ratings, model = c("oneway", "twoway"),
type = c("consistency", "agreement"),
unit = c("single", "average"), r0 = 0, conf.level = 0.95)

Referências

McGraw, KO e Wong, SP (1996). Formar inferências sobre alguns coeficientes de correlação intraclasse. Métodos psicológicos, 1 (1), 30–46.

Shrout, PE, & Fleiss, JL (1979). Correlações intraclasse: Utilizadas na avaliação da confiabilidade do avaliador. Boletim Psicológico, 86 (2), 420-428.

Jeffrey Girard
fonte
Obrigado pela ótima resposta! Em um modelo bidirecional dentro do icc em R, como representamos a seleção aleatória de avaliadores por linha? Quero dizer, imagine que temos um pool de 100 avaliadores, e cada sujeito é avaliado em cerca de 5 a 10 deles. Esse cenário pode ser tratado pelo pacote icc?
Michal
Cada avaliador deve ter sua própria coluna na matriz que você alimenta para a função icc. Caso contrário, o cálculo é o mesmo para os modelos de efeitos aleatórios e mistos - a principal diferença está na interpretação (quão generalizáveis ​​os resultados podem ser considerados).
Jeffrey Girard
Obrigado pela resposta! Estou tentando fazer isso, tendo principalmente NA nas células (e apenas alguns valores com números reais por coluna, onde um avaliador em particular classificou um assunto correspondente a uma linha). No entanto, na saída, estou recebendo um texto dizendo que nenhum assunto foi gravado (por exemplo, Assuntos = 0 Avaliadores = 9). Talvez isso signifique que sempre que pelo menos uma NA foi encontrada, toda a linha é filtrada? Mas como posso denotar classificações ausentes de um avaliador?
Michal
Hmm, isso pode ser uma limitação dessa função icc específica. Eu tenho um script MATLAB que pode lidar com essa situação. Você tem acesso ao MATLAB?
precisa saber é o seguinte
11
Sim, confira o meu site: mreliability.jmgirard.com
Jeffrey Girard