Content Disclaimer Copyright @2020. All Rights Reserved. 
Links : Home Index (Subjects) Contact StatsToDo 
Explanation
Javascript Program
R Codes
D
E
F
G
This page presents Intraclass Correlation Coefficient (ICC) in its "agreement" model, an algorithm to measure agreement (consensus, concordance) between 2 or more measurements that are normally distributed.
ICC has advantages over correlation coefficient, in that it is adjusted for the effects of the scale of measurements, and that it will represent agreements from more than two raters or measuring methods. The calculation involves an initial Two Way Analysis of Variance, the components of which are then used to calculate the ICC Example
The data in the example is artificially generated to demonstrate the procedure, It purports to be from an exercise to test 3 methods of measuring blood pressure, to check whether the results agreed with each other. The table to the left shows the data, the columns represent the 3 methods of mesurements, the 5 rows the 5 subjects being measured. The table to the right is the analysis of variance (truncated to 1 decimal point for brevity), showing components of variation. The algorithm calculates the ICC and its 95% confidence interval using the variance components from the table. Six (6) methods of calculations are possible, depending on assumptions about the nature of the data
In most cases, single measurements are used. Unless the data has features that requires otherwise, the result of choice is single, model 2. In this example, the ICC (truncated to 2 decimal point) is 0.95, 95% Confidence interval from 0.79 to 0.99 InterpretationsThe results can be interpreted as follow
ReferencesPortney LG & Watkins MP (2000) Foundations of clinical research Applications to practice. Prentice Hall Inc. New Jersey ISBN 0838526950 p 560567https://en.wikipedia.org/wiki/Intraclass_correlation Intraclass correlation on Wikipedia https://rdrr.io/cran/irr/src/R/icc.R Source Code for ICC from package irr
R provides an algorithm via its irr package. It produces Intraclass Correlation Coefficient, and the statistical significance of difference between the columns (measurements)
dat = (" 120 115 125 130 140 125 100 98 105 150 156 145 90 90 95 ") mx = read.table(textConnection(dat),header=FALSE) #install.packages("irr") # if not already installed library(irr) icc(mx, model = "twoway", type = "agreement", unit = "single")The results are > icc(mx, model = "twoway", type = "agreement", unit = "single") Single Score Intraclass Correlation Model: twoway Type : agreement Subjects = 5 Raters = 3 ICC(A,1) = 0.953 FTest, H0: r0 = 0 ; H1: r0 > 0 F(4,8.46) = 50.7 , p = 6.17e06 95%Confidence Interval for ICC Population Values: 0.791 < ICC < 0.995As the algorithm in the Javscript program essentially follows that in the icc package, and produces the same answers, it is not repeated here as R codes
Contents of D:3
Contents of E:4
Contents of F:5
Contents of G:6
