理学療法士がまとめたノート

統計学備忘録 since2016

Rを使って統計学を勉強するブログです

級内相関係数 Case1

以前掲載していたのですが、以下の文献を参考に書き直しました。
主にRのプログラム (パッケージは使用してません) を忘れないようにメモしておきます。
理論は以下の文献を参照してください。

1) SHROUT, Patrick E.; FLEISS, Joseph L. Intraclass correlations: uses in assessing rater reliability. Psychological bulletin, 1979, 86.2: 420.
2) 対馬栄輝. 信頼性指標としての級内相関係数. http://www. hs. hirosaki-u. ac. jp/~ pteiki/research/stat/icc. pdf, 2010.
3) http://www.snap-tck.com/index.html

ICC (Intraclass correlation coefficients)
f:id:yoshida931:20190328190143p:plain:w600

case1
linear model  𝒙𝒊𝒋= 𝝁+ 𝒃𝒊+ 𝒘𝒊𝒋
𝜇 全体の平均
𝑏𝑖 被験者の効果(the difference from 𝜇 of the 𝑗th target’s so-called true score)
   𝑏𝑖 ~ N (0, 𝛿𝑇2)
𝑤𝑖𝑗 被験者iのj番目の測定誤差(交互作用:the Judge × Target interaction)
    𝑤𝑖𝑗 ~ N (0, 𝛿𝑤2)

f:id:yoshida931:20190328190650p:plain:w500

例題とグラフ
例題は 3)の「表5.4.1 3名の評価者の重症度評価結果」より
ここではdata541となります

   症例    No1    No2    No3    平均値
     1      15      10      21         15
     2      30      14      38         27
     3      34      42      36         37
     4      52      38      40         43
     5      58      51      42         50
     6      69      78      63         70
     7      76      88      72         79
     8      88      90      84         87
     9      91      94      98         94
    10      95      87      96         93

ICC(1,1)
一人の評価者が複数回評価したときの評価者内信頼性
No1:1回目の測定

ICC(1,3)
一人の評価者が複数回評価したときの評価者平均値の信頼性
同じ一覧表を使用していますが、意味は全く異なります
No1:1回目の平均値
例)No1の症例1の意味は、評価者が3回測定した値(16,15,17) の平均値15

一元配置分散分析のイメージで作図
f:id:yoshida931:20190328191415p:plain:w500

#---------- datasetの作成 ----------#
No1 <- c(15, 30, 34, 52, 58, 69, 76, 88, 91, 95)
No2 <- c(10, 14, 42, 38, 51, 78, 88, 90, 94, 87 )
No3 <- c(21, 38, 36, 40, 42, 63, 72, 84, 98, 96 )
da2 <- c(No1, No2, No3)
PT <- factor(rep(c("No1","No2","No3"),c(10,10,10)))
sub <- factor(rep(c(1:10),3))
dataf <- data.frame(PT, da2, sub) #データセット(ただしPTは使用しない)
#---------- 一元配置分散分析 ----------#
anova(aov(da2~sub))

Analysis of Variance Table

Response: da2
          Df Sum Sq Mean Sq F value    Pr(>F)    
sub        9  22163  2462.5  50.153 9.014e-12 ***
Residuals 20    982    49.1  

#---------- graph ----------#
install.packages("tidyverse")
library(tidyverse)
g1 <- ggplot(data = dataf, mapping = aes(x = PT, y = da2) , ylab="1")
g1 <- g1 + geom_point(size=5,alpha=0.4) + xlab("") + ylab("") + 
  theme(axis.text=element_text(size=15))
print(g1)

ICC(1,1)を求めるRのプログラム

一元配置分散分析 より
BMS=2462.5
WMS=49.1
targets=10 #患者数
judges=3 #評価回数
a=0.05

ICC(A,1)=ICC(1,1)を求めます

#---------- ICC(1,1)----------#
ICC11 <- (BMS-WMS) / (BMS+(judges - 1)*WMS);ICC11
#---------- 95%CI ----------#
F0 <- BMS/WMS
FL <- F0/qf(1-a/2, targets-1, targets*(judges-1)) # lower.tail=TRUE
FU <- F0*qf(1-a/2, targets*(judges-1), targets-1) # lower.tail=TRUE
ICC11_95CI <- c((FL-1)/(FL+(judges-1)),(FU-1)/(FU+(judges-1)));ICC11_95CI

ICC(C,1)=ICC(1,3)を求めます

#---------- ICC(1,3)----------#
ICC1k <- (BMS-WMS) / BMS;ICC1k
#---------- 95%CI ----------#
ICC1k_95CI <-c(1-1/FL,1-1/FU);ICC1k_95CI