test_that("CalcRepeatability returns correct values",
{
num.ind = length(iris[,1])
ID = as.factor(rep(1:num.ind, 2))
ind.data = rbind(iris[,1:4], iris[,1:4]+array(rnorm(num.ind*4, 0, 0.1), dim(iris[,1:4])))
models.list <- apply (ind.data, 2, function (vec){return (lm (vec ~ ID))})
models.list <- lapply (models.list, anova)
rep.itself <- function (lm.model){
msq <- lm.model$'Mean Sq' ## 1 entre, 2 dentro
s2a <- (msq[1] - msq[2])/2
out <- s2a / (s2a + msq[2])
return (out)
}
out <- sapply (models.list, rep.itself)
expect_that(CalcRepeatability(ID, ind.data),equals(out))
}
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.